{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Zipline Beginner Tutorial\n",
    "=========================\n",
    "\n",
    "Basics\n",
    "------\n",
    "\n",
    "Zipline is an open-source algorithmic trading simulator written in Python.\n",
    "\n",
    "The source can be found at: https://github.com/stefan-jansen/zipline\n",
    "\n",
    "Some benefits include:\n",
    "\n",
    "* Realistic: slippage, transaction costs, order delays.\n",
    "* Stream-based: Process each event individually, avoids look-ahead bias.\n",
    "* Batteries included: Common transforms (moving average) as well as common risk calculations (Sharpe).\n",
    "\n",
    "This tutorial assumes that you have zipline correctly installed, see the [installation instructions](https://github.com/stefan-jansen/zipline#installation) if you haven't set up zipline yet.\n",
    "\n",
    "Every `zipline` algorithm consists of two functions you have to define:\n",
    "* `initialize(context)`\n",
    "* `handle_data(context, data)`\n",
    "\n",
    "Before the start of the algorithm, `zipline` calls the `initialize()` function and passes in a `context` variable. `context` is a persistent namespace for you to store variables you need to access from one algorithm iteration to the next.\n",
    "\n",
    "After the algorithm has been initialized, `zipline` calls the `handle_data()` function once for each event. At every call, it passes the same `context` variable and an event-frame called `data` containing the current trading bar with open, high, low, and close (OHLC) prices as well as volume for each stock in your universe."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import warnings\n",
    "import os\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "warnings.filterwarnings('ignore')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "My first algorithm\n",
    "----------------------\n",
    "\n",
    "Lets take a look at a very simple algorithm from the `examples` directory, `buyapple.py`:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "#!/usr/bin/env python\r\n",
      "#\r\n",
      "# Copyright 2014 Quantopian, Inc.\r\n",
      "#\r\n",
      "# Licensed under the Apache License, Version 2.0 (the \"License\");\r\n",
      "# you may not use this file except in compliance with the License.\r\n",
      "# You may obtain a copy of the License at\r\n",
      "#\r\n",
      "#     http://www.apache.org/licenses/LICENSE-2.0\r\n",
      "#\r\n",
      "# Unless required by applicable law or agreed to in writing, software\r\n",
      "# distributed under the License is distributed on an \"AS IS\" BASIS,\r\n",
      "# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n",
      "# See the License for the specific language governing permissions and\r\n",
      "# limitations under the License.\r\n",
      "\r\n",
      "from zipline.api import order, record, symbol\r\n",
      "from zipline.finance import commission, slippage\r\n",
      "\r\n",
      "\r\n",
      "def initialize(context):\r\n",
      "    context.asset = symbol(\"AAPL\")\r\n",
      "\r\n",
      "    # Explicitly set the commission/slippage to the \"old\" value until we can\r\n",
      "    # rebuild example data.\r\n",
      "    # github.com/quantopian/zipline/blob/master/tests/resources/\r\n",
      "    # rebuild_example_data#L105\r\n",
      "    context.set_commission(commission.PerShare(cost=0.0075, min_trade_cost=1.0))\r\n",
      "    context.set_slippage(slippage.VolumeShareSlippage())\r\n",
      "\r\n",
      "\r\n",
      "def handle_data(context, data):\r\n",
      "    order(context.asset, 10)\r\n",
      "    record(AAPL=data.current(context.asset, \"price\"))\r\n",
      "\r\n",
      "\r\n",
      "# Note: this function can be removed if running\r\n",
      "# this algorithm on quantopian.com\r\n",
      "def analyze(context=None, results=None):\r\n",
      "    import matplotlib.pyplot as plt\r\n",
      "\r\n",
      "    # Plot the portfolio and asset data.\r\n",
      "    ax1 = plt.subplot(211)\r\n",
      "    results.portfolio_value.plot(ax=ax1)\r\n",
      "    ax1.set_ylabel(\"Portfolio value (USD)\")\r\n",
      "    ax2 = plt.subplot(212, sharex=ax1)\r\n",
      "    results.AAPL.plot(ax=ax2)\r\n",
      "    ax2.set_ylabel(\"AAPL price (USD)\")\r\n",
      "\r\n",
      "    # Show the plot.\r\n",
      "    plt.gcf().set_size_inches(18, 8)\r\n",
      "    plt.show()\r\n",
      "\r\n",
      "\r\n",
      "def _test_args():\r\n",
      "    \"\"\"Extra arguments to use when zipline's automated tests run this example.\"\"\"\r\n",
      "    import pandas as pd\r\n",
      "\r\n",
      "    return {\r\n",
      "        \"start\": pd.Timestamp(\"2014-01-01\", tz=\"utc\"),\r\n",
      "        \"end\": pd.Timestamp(\"2014-11-01\", tz=\"utc\"),\r\n",
      "    }\r\n"
     ]
    }
   ],
   "source": [
    "# assuming you're running this notebook in zipline/docs/notebooks\n",
    "if os.name == 'nt':\n",
    "    # windows doesn't have the cat command, but uses 'type' similarly\n",
    "    ! type \"..\\..\\zipline\\examples\\buyapple.py\"\n",
    "else:\n",
    "    ! cat ../../zipline/examples/buyapple.py"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As you can see, we first have to import some functions we would like to use. All functions commonly used in your algorithm can be found in `zipline.api`. Here we are using `order()` which takes two arguments -- a security object, and a number specifying how many stocks you would like to order (if negative, `order()` will sell/short stocks). In this case we want to order 10 shares of Apple at each iteration. For more documentation on `order()`, see the [Quantopian docs](https://www.quantopian.com/help#api-order).\n",
    "\n",
    "Finally, the `record()` function allows you to save the value of a variable at each iteration. You provide it with a name for the variable together with the variable itself: `varname=var`. After the algorithm finished running you will have access to each variable value you tracked with `record()` under the name you provided (we will see this further below). You also see how we can access the current price data of the AAPL stock in the `data` event frame (for more information see [here](https://www.quantopian.com/help#api-event-properties))."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ingesting data for your algorithm\n",
    "\n",
    "Before we can run the algorithm, we'll need some historical data for our algorithm to ingest, which we can get through a data bundle. A data bundle is a collection of pricing data, adjustment data, and an asset database. Bundles allow us to preload all of the data we will need to run backtests and store the data for future runs. Quantopian provides a default bundle called `quandl` which uses the [Quandl WIKI Dataset](https://www.quandl.com/data/WIKI-Wiki-EOD-Stock-Prices). You'll need a [Quandl API Key](https://docs.quandl.com/docs#section-authentication), and then you can ingest that data by running:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "scrolled": false
   },
   "outputs": [],
   "source": [
    "!QUANDL_API_KEY=$QUANDL_API_KEY zipline ingest -b quandl"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For more information on data bundles, such as building custom data bundles, you can look at the [zipline docs](https://www.zipline.ml4trading.io/bundles.html). "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Running the algorithm\n",
    "\n",
    "To now test this algorithm on financial data, `zipline` provides two interfaces. A command-line interface and an `IPython Notebook` interface.\n",
    "\n",
    "### Command line interface\n",
    "After you installed zipline you should be able to execute the following from your command line (e.g. `cmd.exe` on Windows, or the Terminal app on OSX):"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Usage: zipline run [OPTIONS]\r\n",
      "\r\n",
      "  Run a backtest for the given algorithm.\r\n",
      "\r\n",
      "Options:\r\n",
      "  -f, --algofile FILENAME         The file that contains the algorithm to run.\r\n",
      "  -t, --algotext TEXT             The algorithm script to run.\r\n",
      "  -D, --define TEXT               Define a name to be bound in the namespace\r\n",
      "                                  before executing the algotext. For example\r\n",
      "                                  '-Dname=value'. The value may be any python\r\n",
      "                                  expression. These are evaluated in order so\r\n",
      "                                  they may refer to previously defined names.\r\n",
      "\r\n",
      "  --data-frequency [minute|daily]\r\n",
      "                                  The data frequency of the simulation.\r\n",
      "                                  [default: daily]\r\n",
      "\r\n",
      "  --capital-base FLOAT            The starting capital for the simulation.\r\n",
      "                                  [default: 10000000.0]\r\n",
      "\r\n",
      "  -b, --bundle BUNDLE-NAME        The data bundle to use for the simulation.\r\n",
      "                                  [default: quantopian-quandl]\r\n",
      "\r\n",
      "  --bundle-timestamp TIMESTAMP    The date to lookup data on or before.\r\n",
      "                                  [default: <current-time>]\r\n",
      "\r\n",
      "  -bf, --benchmark-file FILE      The csv file that contains the benchmark\r\n",
      "                                  returns\r\n",
      "\r\n",
      "  --benchmark-symbol TEXT         The symbol of the instrument to be used as a\r\n",
      "                                  benchmark (should exist in the ingested\r\n",
      "                                  bundle)\r\n",
      "\r\n",
      "  --benchmark-sid INTEGER         The sid of the instrument to be used as a\r\n",
      "                                  benchmark (should exist in the ingested\r\n",
      "                                  bundle)\r\n",
      "\r\n",
      "  --no-benchmark                  If passed, use a benchmark of zero returns.\r\n",
      "  -s, --start DATE                The start date of the simulation.\r\n",
      "  -e, --end DATE                  The end date of the simulation.\r\n",
      "  -o, --output FILENAME           The location to write the perf data. If this\r\n",
      "                                  is '-' the perf will be written to stdout.\r\n",
      "                                  [default: -]\r\n",
      "\r\n",
      "  --trading-calendar TRADING-CALENDAR\r\n",
      "                                  The calendar you want to use e.g. XLON. XNYS\r\n",
      "                                  is the default.\r\n",
      "\r\n",
      "  --print-algo / --no-print-algo  Print the algorithm to stdout.\r\n",
      "  --metrics-set TEXT              The metrics set to use. New metrics sets may\r\n",
      "                                  be registered in your extension.py.\r\n",
      "\r\n",
      "  --blotter TEXT                  The blotter to use.  [default: default]\r\n",
      "  --help                          Show this message and exit.\r\n"
     ]
    }
   ],
   "source": [
    "!zipline run --help"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Note that you have to omit the preceding '!' when you call `run_algo.py`, this is only required by the IPython Notebook in which this tutorial was written.\n",
    "\n",
    "As you can see there are a couple of flags that specify where to find your algorithm (`-f`) as well as the time-range (`--start` and `--end`). Finally, you'll want to save the performance metrics of your algorithm so that you can analyze how it performed. This is done via the `--output` flag and will cause it to write the performance `DataFrame` in the pickle Python file format.\n",
    "\n",
    "Thus, to execute our algorithm from above and save the results to `buyapple_out.pickle` we would call `run_algo.py` as follows:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[2021-03-26 20:51:42.751109] INFO: zipline.finance.metrics.tracker: Simulated 503 trading days\n",
      "first open: 2016-01-04 14:31:00+00:00\n",
      "last close: 2017-12-29 21:00:00+00:00\n",
      "Figure(1800x800)\n"
     ]
    }
   ],
   "source": [
    "!zipline run -f ../../zipline/examples/buyapple.py --start 2016-1-1 --end 2018-1-1 -o buyapple_out.pickle --no-benchmark"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "`run_algo.py` first outputs the algorithm contents. It then uses historical price and volume data of Apple from the `quantopian-quandl` bundle in the desired time range, calls the `initialize()` function, and then streams the historical stock price day-by-day through `handle_data()`. After each call to `handle_data()` we instruct `zipline` to order 10 stocks of AAPL. After the call of the `order()` function, `zipline` enters the ordered stock and amount in the order book. After the `handle_data()` function has finished, `zipline` looks for any open orders and tries to fill them. If the trading volume is high enough for this stock, the order is executed after adding the commission and applying the slippage model which models the influence of your order on the stock price, so your algorithm will be charged more than just the stock price * 10. (Note, that you can also change the commission and slippage model that `zipline` uses, see the [Quantopian docs](https://www.quantopian.com/help#ide-slippage) for more information).\n",
    "\n",
    "Note that there is also an `analyze()` function printed. `run_algo.py` will try and look for a file with the ending with `_analyze.py` and the same name of the algorithm (so `buyapple_analyze.py`) or an `analyze()` function directly in the script. If an `analyze()` function is found it will be called *after* the simulation has finished and passed in the performance `DataFrame`. (The reason for allowing specification of an `analyze()` function in a separate file is that this way `buyapple.py` remains a valid Quantopian algorithm that you can copy&paste to the platform).\n",
    "\n",
    "Lets take a quick look at the performance `DataFrame`. For this, we use `pandas` from inside the IPython Notebook and print the first ten rows. Note that `zipline` makes heavy usage of `pandas`, especially for data input and outputting so it's worth spending some time to learn it."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>period_open</th>\n",
       "      <th>period_close</th>\n",
       "      <th>returns</th>\n",
       "      <th>portfolio_value</th>\n",
       "      <th>longs_count</th>\n",
       "      <th>shorts_count</th>\n",
       "      <th>long_value</th>\n",
       "      <th>short_value</th>\n",
       "      <th>long_exposure</th>\n",
       "      <th>pnl</th>\n",
       "      <th>...</th>\n",
       "      <th>benchmark_volatility</th>\n",
       "      <th>alpha</th>\n",
       "      <th>beta</th>\n",
       "      <th>sharpe</th>\n",
       "      <th>sortino</th>\n",
       "      <th>max_drawdown</th>\n",
       "      <th>max_leverage</th>\n",
       "      <th>excess_return</th>\n",
       "      <th>treasury_period_return</th>\n",
       "      <th>trading_days</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2016-01-04 21:00:00+00:00</th>\n",
       "      <td>2016-01-04 14:31:00+00:00</td>\n",
       "      <td>2016-01-04 21:00:00+00:00</td>\n",
       "      <td>0.000000e+00</td>\n",
       "      <td>10000000.0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.000000e+00</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-05 21:00:00+00:00</th>\n",
       "      <td>2016-01-05 14:31:00+00:00</td>\n",
       "      <td>2016-01-05 21:00:00+00:00</td>\n",
       "      <td>-1.000000e-07</td>\n",
       "      <td>9999999.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1027.1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1027.1</td>\n",
       "      <td>-1.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>-11.224972</td>\n",
       "      <td>-11.224972</td>\n",
       "      <td>-1.000000e-07</td>\n",
       "      <td>0.000103</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-06 21:00:00+00:00</th>\n",
       "      <td>2016-01-06 14:31:00+00:00</td>\n",
       "      <td>2016-01-06 21:00:00+00:00</td>\n",
       "      <td>-2.110000e-06</td>\n",
       "      <td>9999977.9</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>2014.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2014.0</td>\n",
       "      <td>-21.1</td>\n",
       "      <td>...</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>-9.823839</td>\n",
       "      <td>-9.588756</td>\n",
       "      <td>-2.210000e-06</td>\n",
       "      <td>0.000201</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-07 21:00:00+00:00</th>\n",
       "      <td>2016-01-07 14:31:00+00:00</td>\n",
       "      <td>2016-01-07 21:00:00+00:00</td>\n",
       "      <td>-8.600019e-06</td>\n",
       "      <td>9999891.9</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>2893.5</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2893.5</td>\n",
       "      <td>-86.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>-10.592737</td>\n",
       "      <td>-9.688947</td>\n",
       "      <td>-1.081000e-05</td>\n",
       "      <td>0.000289</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-08 21:00:00+00:00</th>\n",
       "      <td>2016-01-08 14:31:00+00:00</td>\n",
       "      <td>2016-01-08 21:00:00+00:00</td>\n",
       "      <td>1.430015e-06</td>\n",
       "      <td>9999906.2</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>3878.4</td>\n",
       "      <td>0.0</td>\n",
       "      <td>3878.4</td>\n",
       "      <td>14.3</td>\n",
       "      <td>...</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>-7.511729</td>\n",
       "      <td>-7.519659</td>\n",
       "      <td>-1.081000e-05</td>\n",
       "      <td>0.000388</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 38 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                                        period_open              period_close  \\\n",
       "2016-01-04 21:00:00+00:00 2016-01-04 14:31:00+00:00 2016-01-04 21:00:00+00:00   \n",
       "2016-01-05 21:00:00+00:00 2016-01-05 14:31:00+00:00 2016-01-05 21:00:00+00:00   \n",
       "2016-01-06 21:00:00+00:00 2016-01-06 14:31:00+00:00 2016-01-06 21:00:00+00:00   \n",
       "2016-01-07 21:00:00+00:00 2016-01-07 14:31:00+00:00 2016-01-07 21:00:00+00:00   \n",
       "2016-01-08 21:00:00+00:00 2016-01-08 14:31:00+00:00 2016-01-08 21:00:00+00:00   \n",
       "\n",
       "                                returns  portfolio_value  longs_count  \\\n",
       "2016-01-04 21:00:00+00:00  0.000000e+00       10000000.0            0   \n",
       "2016-01-05 21:00:00+00:00 -1.000000e-07        9999999.0            1   \n",
       "2016-01-06 21:00:00+00:00 -2.110000e-06        9999977.9            1   \n",
       "2016-01-07 21:00:00+00:00 -8.600019e-06        9999891.9            1   \n",
       "2016-01-08 21:00:00+00:00  1.430015e-06        9999906.2            1   \n",
       "\n",
       "                           shorts_count  long_value  short_value  \\\n",
       "2016-01-04 21:00:00+00:00             0         0.0          0.0   \n",
       "2016-01-05 21:00:00+00:00             0      1027.1          0.0   \n",
       "2016-01-06 21:00:00+00:00             0      2014.0          0.0   \n",
       "2016-01-07 21:00:00+00:00             0      2893.5          0.0   \n",
       "2016-01-08 21:00:00+00:00             0      3878.4          0.0   \n",
       "\n",
       "                           long_exposure   pnl  ...  benchmark_volatility  \\\n",
       "2016-01-04 21:00:00+00:00            0.0   0.0  ...                   NaN   \n",
       "2016-01-05 21:00:00+00:00         1027.1  -1.0  ...                   0.0   \n",
       "2016-01-06 21:00:00+00:00         2014.0 -21.1  ...                   0.0   \n",
       "2016-01-07 21:00:00+00:00         2893.5 -86.0  ...                   0.0   \n",
       "2016-01-08 21:00:00+00:00         3878.4  14.3  ...                   0.0   \n",
       "\n",
       "                           alpha  beta     sharpe    sortino  max_drawdown  \\\n",
       "2016-01-04 21:00:00+00:00   None  None        NaN        NaN  0.000000e+00   \n",
       "2016-01-05 21:00:00+00:00   None  None -11.224972 -11.224972 -1.000000e-07   \n",
       "2016-01-06 21:00:00+00:00   None  None  -9.823839  -9.588756 -2.210000e-06   \n",
       "2016-01-07 21:00:00+00:00   None  None -10.592737  -9.688947 -1.081000e-05   \n",
       "2016-01-08 21:00:00+00:00   None  None  -7.511729  -7.519659 -1.081000e-05   \n",
       "\n",
       "                           max_leverage  excess_return  \\\n",
       "2016-01-04 21:00:00+00:00      0.000000            0.0   \n",
       "2016-01-05 21:00:00+00:00      0.000103            0.0   \n",
       "2016-01-06 21:00:00+00:00      0.000201            0.0   \n",
       "2016-01-07 21:00:00+00:00      0.000289            0.0   \n",
       "2016-01-08 21:00:00+00:00      0.000388            0.0   \n",
       "\n",
       "                           treasury_period_return  trading_days  \n",
       "2016-01-04 21:00:00+00:00                     0.0             1  \n",
       "2016-01-05 21:00:00+00:00                     0.0             2  \n",
       "2016-01-06 21:00:00+00:00                     0.0             3  \n",
       "2016-01-07 21:00:00+00:00                     0.0             4  \n",
       "2016-01-08 21:00:00+00:00                     0.0             5  \n",
       "\n",
       "[5 rows x 38 columns]"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "perf = pd.read_pickle('buyapple_out.pickle') # read in perf DataFrame\n",
    "perf.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As you can see, there is a row for each trading day, starting on the first business day of 2016. In the columns you can find various information about the state of your algorithm. The very first column `AAPL` was placed there by the `record()` function mentioned earlier and allows us to plot the price of apple. For example, we could easily examine now how our portfolio value changed over time compared to the AAPL stock price."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Populating the interactive namespace from numpy and matplotlib\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, 'AAPL Stock Price')"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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QRtjfZOLS373HofK6rl0/jhe3HaUG06ZzP9dOjtoYxIREZGeqbxEpJ3kmHA+s3xih223rpzCPc9u52BZPfdeOjuogRsgJiKUF+88jfvezOHBNQcJdTj4/BlTgjomEREROXEK3SLAJxaPx20tk1JiOHXaid2M6G/R4aHcc+FMrlycSWVDC2PiI4M9JBERETlBCt0iQFiIo9Ps91AxLT0u2EMQERGRAXIEewAiIiIiIiOdQreIiIiISIApdIuIiIiIBJhCt4iIiIhIgCl0i4iIiIgEmEK3iIiIiEiAKXSLiIiIiASYQreIiIiISIApdIuIiIiIBJhCt4iIiIhIgBlrbbDHEHDGmFLgyCC8VAIQBpQNwmuNFKl0/3klANWDOJbhoqfPrCej+fM80c+sJyP98wzEZ9aT4f55Dvbn1Zuh/nkOtc+rN0Pl8xxun1t3BvPzHOzPbKK1Nq2rHaMidA8WY8wDwCJr7ZJgj2W4MMZs6O7zMsY8YK29dbDHNNT19Jn1ct6o/TxP9DPr5Zoj+vMMxGfWy+sN689zsD+v3gz1z3OofV69GSqf53D73LozmJ/nUPrMVF7iX/8J9gBGGH2e/qXP07/0efqXPk//0ufpX/o8/WtUfp4K3X5krR2Vf4kCRZ+nf+nz9C99nv6lz9O/9Hn6lz5P/xqtn6dCt/89EOwBDDP6vPpPn1n/6TPrP31m/aPPq3/0eZ0YfW79N2Q+M9V0i4iIiIgEmGa6RUREREQCTKFbRERERCTAFLpFRERERAJMoVtEREREJMAUukVEREREAkyhW0REREQkwBS6RUREREQCTKFbRERERCTAFLpFRERERAJMoVtEREREJMAUukVEREREAkyhW0REREQkwBS6RUREREQCTKFbRERERCTAFLpFRERERAJMoVtEREREJMAUukVEREREAkyhW0REREQkwBS6RUREREQCTKFbRERERCTAFLpFRERERAJMoVtEREREJMAUukVEREREAkyhW0REREQkwBS6RUREREQCTKFbRERERCTAFLpFRERERAJMoVtEREREJMAUukVEREREAkyhW0REREQkwBS6RUREREQCTKFbRERERCTAFLpFRERERAJMoVtEREREJMAUukVEREREAkyhW0REREQkwBS6RUREREQCTKFbRERERCTAFLpFRERERAJMoVtEREREJMAUukVEREREAkyhW0REREQkwBS6RUREREQCTKFbRERERCTAFLpFRERERAJMoVtEREREJMCCHrqNMQ8ZY0qMMTvabVtgjPnAGLPFGLPBGLPMt90YY+4zxuQYY7YZYxYFb+QiIiIiIn1jrLXBHYAxpwN1wKPW2jm+ba8Bv7bWvmyMuQj4urV2le/xHcBFwHLgt9ba5b29Rmpqqp00aVLA3oOIiIiIyMaNG8ustWld7Qsd7MEcz1q72hgz6fjNQLzvcQJw1Pf4crzh3AIfGGMSjTEZ1trCnl5j0qRJbNiwwZ/DFhERERHpwBhzpLt9QQ/d3fgK8Kox5hd4S2BO8W3PBPLaHZfv29YpdBtjbgVuBZgwYUIgxyoiIiIi0qOg13R34zbgq9baLOCrwF/7ewFr7QPW2iXW2iVpaV3O8ouIiIiIDIqhGrqvB571Pf4XsMz3uADIanfceN82EREREZEha6iG7qPAGb7HZwH7fY9fAK7zdTFZAVT3Vs8tIiIiIhJsQa/pNsY8DqwCUo0x+cB3gVuA3xpjQgEnvtps4CW8nUtygAbgxkEfsIiIiIhIPwU9dFtrr+lm1+IujrXA7YEdkYiIiIiIfw3V8hIRERERkRFDoVtEREREJMAUukVEREREAkyhW0RERESGhd2FNdQ1uYI9jBOi0C0iIiIiQ15pbROX/f49Hlh9MNhDOSEK3SIiIiLSqwfXHOSB1QeC9vovbS+kxW3ZU1gTtDEMhEK3iIiIiPTI7bH84e0c7n/3IN4OzoPv+S3eRchzSuuC8voDpdAtIiIiIj3aXlBNZUML5fXN5JT0HnrL65pYf7iC7fnVfgnpueUNbMqtIiEqjNzyBsrrmnhucwE7j1YP+NqDJeiL44iIiIjI0LX+cAVX/Xld2/MPDpaTPSaux3Ouf/gjdhR4y0CuXTGR7112Eg6HOeEx/GfbUQBuWTmZX7y2jy88tpH1hytJjY3go/89e0DXHiya6RYRERGRLllr+d5/dgJw59nZTEmL4aev7OWVHUXdntPi9rCnsJYrFmZy06mT+fsHR/iff23F5fac8Dhe2HKUJROTWDUjHYD1hysBKKtrYk9R7QlfdzApdIuIiIhIl17ZUcSOghp+edV8vnbudP5+83KmpsXwhcc28svX9nZ5zpHyelwey+nTU/nOJbP4n/Om8+zmAr7xzPYTGsOeohr2Ftdy+YJxnDQuni+cMZWMhEieuHUFAO/llJ7w+xtMCt0iIiIi0onbY/nl6/uYlh7LxxZmApCZGMVTXziZyxeM43dv5ZBX0dDpvP3F3prv7PQ4jDF86axsbjhlEs9tKaC6oaXf43hlRxEOAxfNzcAYwz0XzmTdN89mxZQUstNjWbO/bGBvdJAodIuIiIhIJ89tLiCnpI67zp1OSLua6YjQED61JAuAvMouQndJHcbA1LTYtm2Xzh+H22N5d3//Z6V3FNQwNS2WlNiITvtOnZbKR4cqcLa4+33dwabQLSIiIiIdNLs8/PqNfczJjOeCOWM77c9IjAKgsMrZad+B0jrGJUQRFR7Stm1BViLJMeG8s7ek32PZU1TDzIz4LvetzE6lyeVh05HKfl93sCl0i4iIiEgHT27II7+ykbvOm4ExnTuDZCREAlBY3dhpX1G1k0xfKG8V4jDMGBNHbnnnmfGu/OaNfby0vZAaZwv5lY3MHNt1t5TlU1IIdRjW5Az9EhO1DBQRERGRDp5cn8v88Qmsmp7W5f7IsBCSY8I5Wt15pru0rolZXcxMJ8eGs/to76tJ1jhb+N1bOWQmRpH0bhgAszK6Dt2xEaEsnJDIe/vL+MYFvV46qDTTLSIiIiIdlNU2M31MXJez3K3GxkdSWNV5pru0tom0LuqvU2LCKa9v5pUdhdQ3ubq97roD5bg9ltyKBrbmVxMbEcr88YndHn/atDR2HK2msr655zcVZArdIiIiItJBdWMLidFhPR4zLjGSwuNmup0tbmqdLtLiOofu5Jhwqhtb+MJjm/jiPzZ1e9339pcRFuIN+1NSY9jxvfO7vImy1WnZqVgLaw+U9zjeYFN5iYiIiIi0aXK5aWxxkxDVW+iO4qNDFRwqqyc+MpSU2AhKa5sAugzd7YPzu/tK8XhslytJrtlfysrsNK5cPJ6lk5J7He/88QnERYTyXk4pZ8xIo7K+mazk6F7PG2ya6RYRERGRNtWN3l7aCdHhPR43PimKGqeLM3/xDit/9jYAJT2F7piO1/v35oJOx+RVNHC4vIHTpqVy0dyMLq9zvNAQByumprBmfxkn/+jNtrEMNQrdIiIiItKmpjV09zLTPaHdbHJDs5v6JlfbTHd6N+UlrRZNSOS7L+zs1M3kPV8XktOnp/ZrzCuzU8mvbKTWVys+FOu7FbpFREREpE11H0P3+KSOJRzffWEnb+wuBnqf6b7vmoUYA195cjMut6dt+5r9pYyNj+ywsE5fXDpvHJ9aksWKKd5ylJzSun6dPxgUukVERESkTZVvqfbE3ma6U46F7oyESJ7bXMDTG/OJDHOQ3EVpSvuZ7vFJ0fzwirlsyq3iO8/vpKHZhdtjeT+nnNOyU3vsmtKVpJhwfnrlPH5+5XwAckqGXujWjZQiIiIi0qavM93xkWEkRodR1dDCG187g9AQw76iOhwOb5318RKPC+KXzR/HltwqHnr/EPmVDZTVNVPd2MLK7P6VlrSXmRhFVFiIQreIiIiIDE0NzS6e23yUxhY30HvoBshKiiYi1ElMhDdSzh2f0O2xIQ7Dl8/O5tRpx0L1/106m9AQwwOrDwIQFxnKyuyuF+TpC4fDMCUthv0K3SIiIiIyFL24rZD//fd2zpzhDb3xfQjdH1uYSXVD329a/Oq50ztt+9xpk/nP1qN84YypXHfyxH6Xlhzv82dMJbyLmfZgU+gWEREREfIqvJ1EtuZXExcZSkgXPbSPd/Npkwf8uunxkbz/jbO67Nl9Ii6bP84v1/G3ofc1QEREREQGXV6ld0n3ivrmPpWW+JO/AvdQptAtIiIiIm0z3QDT0vvXsk96p9AtIiIiIuRVHgvdyyenBHEkI5NCt4iIiMgo52xxU1zT1PZ8uW+RGfEfhW4RERGRUS7fV889z9fyb8647lv/yYlR9xIRERGRUW5TbiUAv7hqPtPHxAV5NCOTZrpFRERERrmPDlWQFB3GtDTdQBkoCt0iIiIio9xHhypYNjl5VLTuCxaFbhEREZFRrLC6kdyKBpapY0lAKXSLiIiIjGIfHaoAYPlkdSwJJIVuERERkVHsw0MVxEWEMisjPthDGdEUukVEREROUEOzi6c35rPxSEWwh3LCPjpUwZJJSYSonjug1DJQRERE5ATd88x2Xth6lNiIUN666wzS4yODPaR+KatrIqekjk8sGh/soYx4mukWEREROQF5FQ38d9tRzpqZjrPFzY9e2h3sIfXbel899zLVcwecQreIiIhIP1lr+e4LOwkLcfCjK+Zy26qpPLflKOsOlAd7aP3y4aEKosJCmJupFSgDTaFbREREpJ82HqnkrT0l3H3+DMYmRPLFVdMYnxTF/z2/gxa3J9jD67NDZfVkj4klPFSRMND0CYuIiIj0U+uy6VcszAQgKjyEey89if0ldTz8/qFgDq1f6ppcxEXqFr/BoNAtIiIi0k9b86vJTIwiJTaibds5s8dw9sx0fvPGfp7fUhDE0fVdfZOL2AiF7sGg0C0iIiIC/HtzPkfK6/t07Lb8KuZnda6D/sEVc8hOj+UrT27hYGkd4K3/zimp8+tY/aXW6SJGoXtQKHSLiIjIqFfX5OKrT27ljJ+/0+uxOSV15FU0Mn98Yqd9GQlRPHj9UsJCHDz4nrfM5F8b8jnnV+/y7r5SP4964OqaXMQpdA+KoIduY8xDxpgSY8yO47bfYYzZY4zZaYz5Wbvt3zTG5Bhj9hpjzh/8EYuIiMhw1tjsZtI9L/LMxvy2bfuLa9se7ymq6fH8n7y8h9iIUK5c3HVv67S4CM6Zlc6a/d6Q/erOIgAeXXt4gCP3L2st9U2a6R4sQQ/dwCPABe03GGPOBC4H5ltrTwJ+4ds+G7gaOMl3zh+NMSGDOloREREZ1tYeKAPgkXYheF+70L3xSGW35647UM4bu4v54plTO9RzH29CcgxF1U6cLW7WHfS2EXxrbwkV9c0DHH3/rD9cgbPF3eW+JpcHl8cSqxspB0XQQ7e1djVw/NqptwE/sdY2+Y4p8W2/HHjCWttkrT0E5ADLBm2wIiIiMuy9sdsbK+a06029t6iOsBDvMuglNU1dnufxWH700m7GJURy06mTe3yNcYmRtLgtL2w5SkOzmzvPmoa18OHBwevjvf5wBVf9eR2/fyuny/11TS4A3Ug5SIIeursxHVhpjPnQGPOuMWapb3smkNfuuHzfNhEREZE++cAXfNv3095fUsusjHhSYsIpresYuv+y+iCn/+xtfv3GPrYXVHP3BTOIDOv5F+0ZCVGAdzY9JjyEz58xlejwENYdLOc3b+xjbU6Zn99VZ795Yx8AT6zPpcnVeba7zqnQPZiGaugOBZKBFcDdwFPGGNOfCxhjbjXGbDDGbCgtHXo3LoiIiEhwlNQ4AW+7PIBaZwvrD1cwf3wiaXERHWa68ysb+OFLu8mtaOB3b+UwOyOey+f3Pt+XkRAJwK7CGlbNTCcmIpQlk5J5c3cJv3ljP194bCP5lQ0BeHdeRdVO3s8pZ/HEJMrqmrssmdFM9+AaqqE7H3jWen0EeIBUoADIanfceN+2Tqy1D1hrl1hrl6SlpQV8wCIiIjL0OVvc1Dd7Z31bQ+eL2wpxtni4YlEm6fGRlNY6247Pq2gEIDPRO3P91XOn43D0Pg84znc8wHmzxwCwdGISBVXe69U4Xdz5+OaArV75xu5igLYymPK6zrXkCt2Da6iG7ueAMwGMMdOBcKAMeAG42hgTYYyZDGQDHwVrkCIiIjK8VDYcC5+tM91Pb8xnaloMC7MSSYuNoLT22Ex3YbU3JP/qk/P54RVzOGdWep9eJyk6jIhQB6EOw6oZ3nMWTEhs2//ti2exKbeKmx5Z31bu4k+v7ypmUko0SycnAR3fd6vW968bKQdH0D9lY8zjwCog1RiTD3wXeAh4yNdGsBm43lprgZ3GmKeAXYALuN1a2/UtuSIiIiLHaT/jW9fk4mBpHRuOVHLPhTMxxpAeH0FpXRPWWowxHPXNTM/PSmT5lJQ+v44xhkkpMYxJiCQhKqztGsZAcnQ4N582mQOldTz+UR5bcqvY/j3/dUGua3Kx7kA51508kaTocIAuu6a0znSrZeDgCPqnbK29pptdn+3m+B8CPwzciERERGSkag2fE5KjqW9y88ymfBwGrljordNOj4ugxW2pbGghOSacgionKTHhvd442ZUHrltMdPixqBUfGcbMsfGMjY/AGMP/u3wOjc1unttylIZmV4djB2L1vlKa3R7OnT2GsBAHCVFhVPYQurU4zuAYquUlIiIiIn7XWmYxITmamsYWntlYwBnT0xgT773xsfXPrXlVgLe8pH19dn9MTIkhLa5jL+8Hr1/CT6+cB0BoiIMzZqT5XsfZ6fwT9fquYpKiw1g80VtakhwTTnlXodupme7BpNAtIiIio0ZreUlWchS1TS6KapxcufhYj4bTp6cxJS2GL/1zE3c9tZU9hbVtnUj8ITMxivS4Y9cbG+8N9EV+Ct0ut4e39pRw5sx0QkO8MS8pOqzLmu66JhfGQHS41hkcDArdIiIiMmJd9ee1/OLVvW3PK+qbcRgYl3Bs9vqUqcdqtWMjQvnbjcs4/6SxvLariKIaJ5NSYwI2vnGJ3gDeWjs+UOsPV1Ld2NLWMQW8M90V9S1tz0tqnVz9wDr+s/UoE5Oj6WdXZjlB+n2CiIiIjFjrD1ey/nAl/3P+DAAqGppJig4n3ndzI0BidFiHc7KSo/nVpxbQ7PKwObeSmWPjAza+1nIWf5SX7Cio5tWdRYSHOliZfaxdcnJMODsKatqe/2tDPh8c9C4GfuOpkwb8utI3Ct0iIiIy4l183xoam92U1DYxNiGyrY45LjK025ne8FBHvzqWnIjIsBBSYsIHHLo3HqnkE39aC8CZM9I61GknxYRTVONkW34Vbo/ltZ1FbfvOnNG3FogycArdIiIiI8Q9z2xj3cFyrj95Ep9cmjXqFz1pv/DMzqM1XDwvg5OM4cwZaW11zKmxEd2dPmjGJkS29QM/EQdL6zqU0Jw5s2OQbm0beNnv32/bdu2KiaTGRnQorZHAGt3/NYqIiIwg7x8oo7S2ie//dxe/eWMfP7xiLpfOH9fv65TUOkmLjRj2tb6NLR2X8vjDpxe1PX53XyngLb0ItoyEqBNaEr6uycWvX9/HI2sP4/ZYbjp1MqV1TVx23P/mq2aksfFIJZfMyyA+MoywEAdLJiWdUBtEOXEK3SIiIiNAs8tDQWUjXzpzGmfOTOf7/93FV57cwqnTUvsVLEtrmzjlx29x9/kz+PwZU7HWcsPD65mflcjXzp0ewHfgf43Nx0J3+8AN0ODrUZ0yJEJ3JB8d6vuqlCW1Ts7/9WoaW9w0uTxcvXQCXzprWttS9cebOTaev1y3xF/DlROk7iUiIiIjQEFVIx4LE1JiWDghiZtOnYzbYymra+r95HZySupweSy/fXM/RdVOdh6t4d19pdz35n7e218WoNEHRoMvdP/6U/O5eF5Gh32nT0/j3Nlj+M4ls4MxtA4yEiOpcbralmXvzfb8aiobWkiLi+DfXzyVH398breBW4YOzXSLiIiMAEfK6wGYlBINeG8QBKh1tnR7TlfyfGUOzhY3P355N+OTjoW5XYXVnJad6o/hDorWme6osM5xJyYidMjM/ra2LyysdjItPbbHY9cfruCN3cUAvHD7aSQNgZl66RuFbhERkRHgSLk3LE/oFLo7zp62uD2EhXT/i+68igYcBj5/xlT+9M4B4iJDOW1aKu/llFHf5O72vKGoscX73of64i9jfYvvFB0Xun/zxj5mjImjyeVhTmY8aXGRXPXndYC3Fl2Be3hR6BYRERnG9hTVcMND65mcGkN0eAhpvm4ccZHe3tPtQ/eDaw7ys1f28qWzphHiMESHh/DJJVnUN7moa3KREhNBbkUD4xKjuPOsbJ7fXMDRaid3nTedTbmVfS5/GCpay0uihnjobp3pPtqug0l1Qwv3vbmf0BAHzS5vF5b2S8qnxwW/64r0j0K3iIjIMPb3dUcoqnFSVOPkorlj2zqOtM501/mC8svbC/nBi7sZlxDJr17f13b+9/6zq+3xpJRokmLCmZAcTVR4CA9ct4T9JbUsnJBETEQo9c1DN3S/ubuYqPAQTpl6rPylLXQP8S4dYxK8Abr9UvBrD5Thsd4bZFNjw7n9zGn8d1shkWEO8ioa/baCpQwehW4REZFhbN2BY10vbjhlctvj1h7dtc4WNuVW8pUnt7B4YhJ/u2kZn7p/HeV1zdx+1jQamlzERISSU1LHI2sPc7i8gauXZgEwJzOBOZkJbdcbquUlDc0ubv7bBgAO/+Titu1OX8vAoV5eEhEaQnpcBId9dfkAq/eXER7qneW+ZN44bjx1MjeeOhmX28PH/vg+XzpzWhBHLCdCoVtERGSYyi1v4GBZPV8+O5spaTEsnZTUti8mPBRj4HB5Aw+sPkRGQiR/uW4JsRGh/OsLJ+Ns8XRoJVjV0Mwjaw8DcPasMZ1eKzo8ZMiWlzy/5WiX21tnuqPDh37cmT0unl1Hjy3VvqeohiUTk/j8GVNZMD6xbXtoiIP/3rEyCCOUgRr6fwtFRESkS5tyKwG4YM5YZmXEd9jncBhiw0P554e5hIc6eOxzy9pCdnR4KNHH3YOXGB3ODadMIizEcO7szqE7JiK0rVRlKPF4LA+uOQhARKgDa21bic1wKS8BmJuZwJr9ZThb3ESGhVBY5WRldipnTE8L9tDETxS6RUREhqlNuZXEhIcwfUxcl/vjIkOpbXKxcloqM8fGd3lMe/dedlK3+2IjQimt7V/P78Hwys4iDpTWs3BCIptzq6hpdJEQ7b2JtNFXgz7Ub6QEOGlcAm6PZVdhDXMzEyiudZKh3tsjihbHERERGaY25VYyPyuREEfXy7XH+m6mzEqOHvBrDcXyEmstv3srhylpMdxwyiQAimuP3YzY2OIm1GEIDx36cWfeeG/t/Gs7iymucWItZCZGBnlU4k9D/2+hiIiIdNLY7GZ3YS2LJiR1e4zLbQH/hO7YIVhe8vbeEnYX1vDFVdMY55sVbt8BpKHZPSxmuQHGJUbx8UWZ/GXNQV7b6V38JiNBM90jiUK3iIjIMLQtvwq3x7JwQmK3x1Q2NAOQlTTw8BYTEdpWIx1Mr+0s4q/vHWqb5R6fFMXlC8YxJs47K1xc026mu9k9LOq5W333kpNIiQnnxy/vBmj7IiEjg2q6RUREhqFNuVUALOxhpruq0bsEfOsqlQMREx5CfbOrw42KwXDr3zcCEBcRyubcKn7wsTmEhThIj/f2ui5pV3fe2OIe8u0C20uIDuPHH5/b1v5wnMpLRhTNdIuIiAxDm3MrmZQS3aHt3/Gst7qErCQ/hO6IUKwlqLPdOSV1bY+//sw20uMiuHLxeAAiw0JIjY3ocIy3vGR4zS+ePWsMn1qSxYTk6GHR6lD6Tv9rioiIDDPWWjblVnF6dmqPx3374lk8/P5hYiIG/n/3rdeob3b55Xon4rnNBQDcsnIyb+4p4bYzphLZrnzk1GkprNlfisdjcTgMdU7XsJrpbvXjj8+l2e0J9jDEzzTTLSIiMszkVzZSVtfEwondl5YAfG7lFN6/5yy/vGZMhDe8BmtVyh0F1Tz43kEunpvBty6ezVt3reKqJVkdjjljehpldc1sL6jG7bHsPFpNdnpsUMY7EA6H6fBlQkYGzXSLiIgMM62L4izMShy014zxlToMdtvAivpmfvnaXh7/KJek6HDuuXBmt8eePj2NqLAQbnl0A7eePoUap4sVU1IGcbQi3dNMt4iIyDCzObeKqLAQZo7telGcQIj1lZTUOFsG7TUBbnz4I55Yn8d1J0/irbtW9dj+MDU2gmduO4W4yFB+8KK3A8jyKcmDNVSRHmmmW0REZJg5VFbP1PQYQkMGb+5smq9MY2dBDadM7bmW3F/K65rYml/N3efP4PYzp/XpnNnj4vnPHafxo5d2U1nfol7XMmQodIuIiAwzBVWNTEsb3Frl9PhIJqfG8OGhcm45fcqgvOaGI94ymhX9nK2ODg/lBx+bG4ghiZwwlZeIiIgMI9Za8isbyPTDgjf9tXxyMh8dqsDjsYPyehsOVxAe6mBOZsKgvJ5IIPk9dBtjBt4MVERERDqodbbwub+tZ/X+MpwtHjKDsFrhssnJ1Dhd7CmqHZTX215QzUnj4okIVScPGf78FrqNMacYY3YBe3zP5xtj/uiv64uIiIxmb+4u4Y3dJVz/0EcAjA/GTLevE8hHh8oH5fUOlzUwJXX4tfwT6Yo/Z7p/DZwPlANYa7cCp/vx+iIiIqPW67uKOzwPRnlJZmIUmYlRfHiogqqGZpwtgevZ3dDsoqjGyeRU/QJdRga/lpdYa/OO2xS8tWJFRERGiCaXm3f2lnDNsizifK37xvthafcTsXyKt677Y394nx/62vK1WnugjL2+0pOCqkb+vu4wDc0n1tf7cFkDAJM10y0jhD+7l+QZY04BrDEmDPgysLuXc0RERKQX6w6UU9/s5tzZY7jrvBlsOlJJQlRYUMayfHIyz24qoLy+mbCQY2Um1lq+9M/NnDQunt9fs4gfvriLl7YX8ad3DvDtS2Zz4ZyxGGP6/DqHyuoBmKSZbhkh/Bm6vwD8FsgECoDXgNv9eH0REZFR6fVdxUSHh3DK1FQiw0I476SxQRvL8snHVnjMKa2jrslFbEQoR8obqKhvZs3+MuZ//zUAzps9htyKBr74j01csyyL/2wt5OUvr+xxgRsAt8fyzt4SACalxATuzYgMIr+Vl1hry6y1n7HWjrHWpltrP2utHZw7LUREREYoj8fyxu5iTs9OIzIs+F08JqZEkx4XAYC1sD2/GoDNeZUdjosJD+E7l8zmv3ecRmZiFE+sz6OuycU23/E9+cPbOfxrYz5XL80iJkJLisjI4M/uJX8zxiS2e55kjHnIX9cXEREZ6qy1fu9hvb2gmuKaJs6dPcav1z1RxhiuP2USn14+AfD20gbv0vQhjmPlIzu/fwFZydGEhjiYmh6L9X0sh8vre7z+hsMV/P6tHC6Zl8GPP64FbmTk8OfXx3nW2qrWJ9baSmPMQj9eX0REZEj7xjPb+OBgBe/evapf9cvHW7O/lLmZCSRGh/P6rmJCHIazZqb7caQD07ok+96iWl7cXsgdZ2ezObeKZZOSmTE2jkvmZXQ4flJKNKt9j3PLG7q97ocHy7nxkfVkJkVx72UnDegzFBlq/Nm9xGGMSWp9YoxJRsvMi4jICFXd2EJJrbPtucdjeWpDPrkVDWzKrezhzJ7lVTRw7V8/4tev7wO89dxLJiaRFBM+4DH72yXzMthTVMuOgmp2F9awaGIi9152EksmdVy2fWK7uuyuZrobm918dKiCGx5eT0ZCJE/euoLU2IiAj19kMPkzdP8SWGeM+X/GmB8Aa4Gf+fH6IiIiQ0JJjZNLf/cep//sbR774AjWWrYXHKtV/v1bOSdcZvLyjkIAntlUwLOb8tlbXDtkSkuOd8b0NAD+vu4ILo9lYVZSl8e177X94aEKLvztGt7bX0aL28NXntjM0h++wT3PbCM1LpzHb11BenzkoIxfZDD5bSbaWvuoMWYDcJZv08ettbv8dX0REZGh4uG1hzla1cjSScl8+7kd3PvCTly+kP3FVVP54zsH+NFLu/n2JbP7dV2Px/LvzUcJD3FQ1+Tia09tBeC82cHrVtKTrORoQh2Gl7Z7vygsmJDY5XHZ6XEApMdFUFLbRH5lA5/964dMSI4mt8JbblLX5OKWlZNJj1PglpFpwKHbGBNvra3xlZMUAf9sty/ZWlsx0NcQEREZSgoqG8lMiuLvNy/j0XVHKK9vIjo8lGnpsZw3ewwNzW4efO8Q/91WyEnj4rl4XgYfXzS+1+s+uu4wuwtr+Nkn5lFa10RKTDhua5mQMjR7VYeFOJiQHM3BsnomJEd3WxKSlRzNf750Gqlx4byfU84l8zK4/92DPLL2EN+5ZDY/fmk3Lo9l3vjEwX0DIoPIHzPd/wQuATYC7X+XZnzPp/jhNURERIaM4honY+IiCQ1xcNNpkzvt/84ls5mWHsuGwxWsO1jOBwfL+diCTByO7m8MzKto4Gev7uWM6WlctWT8sLmJcFJqDAfL6lnYzSx3q7njEwC4crH3y8eXz8nmzrOnYYzh+S0FbMuvZp7vGJGRaMCh21p7ifH+y3CGtTbXD2MSEREZ0kpqmzhpXHy3+0Mchs+umMhnV0zkqfV5fP2ZbRwur2dKWuclzd0ey7825PHge4cwwI8+PnfYBG6AyanemyQXTei6nrsnre/z1GmplNc1M6GXRXNEhjO/3EhprbXAi/64loiIyFBmrfXOdPfxZr+TMr3hfOfRmi73v59Txj3PbienpI57LppFZmKU38Y6GKb6vkj0NtPdk6+dO52Xv7JyWH3ZEOkvf7b022SMWWqtXe/Ha4qIiAwptU0uGprdjO1j6G69ifCOxzeTFhfBiikp1Dhb+M3r+8lIOHaNb188i88smxCQMQfSxxaOIyYihLmZJ14aEhbiICzEnw3VRIYef4bu5cBnjTGHgXp8Nd3W2nl+fA0REZFBUVTt5Kev7OHyBeM4XFbPDad6a7dLary9udPj+9ZHOjzUwcIJiWzOreL7/9nF/5w/nf99dgdFNU5CHYYVU1JIjQ3ncyuH5y1Q0eGhXL4gM9jDEBny/Bm6z/fjtURERILq3hd28srOIv69uQCAyWmxnDE9jeKaJoA+l5cAPHDtEh5Ze4g/vH2Amx7ZwPQxsXz30kXc8fhm3ssp45SpKQF5DyIydPijZWA68L/ANGA78GNrbdeFa12f/xDe7icl1to5x+27C/gFkGatLfPdsPlb4CKgAbjBWrtpoO9BREQEYN2Bcsrrm4iJCOWVnUUd9t311FZOn57Ke/vLADqUhvQmLS6CW0+fytoD5ayclsrtZ00jIjSET+WU8Y8Pc4mN0ALOIiOdP/4rfxRvu8Df4Q3P9wE39OP8R4Df+67TxhiTBZwHtO+IciGQ7ftZDvzJ96eIiMiAvL2nhBsf8d6WlJkYxZS0GEIdhn3FdVwyL4Ot+VW8vaeEU6elcs6sMf3utJEQFca/v3hqh21fO3c6Hx6q4JphWMstIv3jj9CdYa39lu/xq8aYfs08W2tXG2MmdbHr18DXgefbbbsceNTXLeUDY0yiMSbDWlt4IgMXERFp9dquYzPbBVWN/PNzy3lmUwH7iuu4fEEmv7tmIdbSY6/t/kqJjeCNr53ht+uJyNDll99nGWOS8N44CRDS/vmJrEhpjLkcKLDWbj2ufVAmkNfueb5vW6fQbYy5FbgVYMIEzSCIiIw2JbVOlv3wTS6aO5ZNR6q49uSJXHfyRI5WOclOj+0UnrflV7MyO7WtBd4p01LJKa3j35vzmZMZjzEGdbQTkRPlj9CdgLe8pP0/Ra2z3f1ekdIYE423Rvy8gQzKWvsA8ADAkiVLbC+Hi4jICLO7sBaAl7YXER0ews9f3ctv39xPs8vD186dzm2rprItv5rqxmaqG1vYebSG21ZN5RsXzGy7xtVLJ7BoQhIZCcOrd7aIDD3+WJFykh/G0d5UYDLQOss9Hm8P8GVAAZDV7tjxvm0iIiIdlNc1tT3+xgUzWTQhicc+OMKTG/L44zs5vLe/jI8Od/xl7Lzjek2HhzqYM4D+0yIirYbc7dLW2u1AeutzX9/vJb7uJS8AXzLGPIH3Bspq1XOLiEhXCqu9/bRPnpLC5QvGkRgdzk+vnMed52Rz+e/f46PDFdxx1jTOmplOdWMLr+4sYuX0tCCPWkRGqqCHbmPM48AqINUYkw9811r7124Ofwlvu8AcvC0DbxyUQYqIyLBTXOMkPjKUx29d0WF7ZmIU/7xlBe/uLeXm0ya31XavmpHe1WVERPwi6KHbWntNL/sntXtsgdsDPSYRERn+iqqdjO2ml/b0MXFMHxM3yCMSkdHM4a8LGWNu7mLbT/x1fRERkf4ornH2a9VIEZFA8lvoBj5hjPlM6xNjzB8AFceJiEhAWWt5dWcRlfXNHbYX1TgZq9AtIkOEP8tLPgG8YIzxABcAVdbaTrPfIiIi/vTUhjy+8cx2Tp2WwhdXTePdfaWs3ldKcU0TmUlq9SciQ8OAQ7cxJrnd088BzwHvA98zxiSfyOI4IiIiffH3dYe59z+7AHg/p5z3c8oJD3GwZFIS91w4k2uWanE0ERka/DHTvRHvIjim3Z8X+376vTiOiIhIb1rcHu59YSf/+DCXs2am88Mr5nD/uwdZNjmZM6anERMR9D4BIiId+GNxnMn+GIiIiEhf1DpbuOXRDXxwsIIvnDGVu8+fQYjDcO9lJwV7aCIi3fLbVIAx5nbgH9baKt/zJOAaa+0f/fUaIiIyejW53Hz2wQ9Zf7iSEIfhV5+cz8cXjQ/2sERE+sSf3UtuaQ3cANbaSuAWP15fRERGsQfXHGL94UoA7r10tgK3iAwr/ix6CzHGGN8CNhhjQoBwP15fRERGsee3FHDK1BT+ecuK3g8WERli/DnT/QrwpDHmbGPM2cDjvm0iIiID0uzycLC0noUTEoM9FBGRE+LPme5vAJ8HbvM9fx140I/XFxGRUepgWR0uj9XS7SIybPktdFtrPcaYvwLv4W0VuNda6/bX9UVEZPTaW1QLwIyxCt0iMjz5s3vJKuBvwGG8vbqzjDHXW2tX++s1RERkdNp1tIZQh2FKamywhyIickL8WV7yS+A8a+1eAGPMdLx13Yv9+BoiIjLK7C6s4W/rDrMyO5XwUH/eiiQiMnj8GbrDWgM3gLV2nzEmzI/XFxGRUaSo2klYiOGL/9hEfGQYP7tyfrCHJCJywvwZujcYYx4EHvM9/wywwY/XFxGRUWJHQTWf+NNajIEWt+Wfn1tOWlxEsIclInLC/Pl7utuAXcCdvp9dwBf8eH0RERkFml0e7nx8M3GR3nmhey6YyfIpKUEelYjIwPhzpvsL1tpfAb9q3WCM+TLwWz++hoiIjHCPrjvMwbJ6HrlxKadMVR23iIwM/vyX7Poutt3gx+uLiMgo8OL2QhZkJbJqRroCt4iMGAOe6TbGXAN8GphsjHmh3a54oGKg1xcRkdGjodnF9vxqbj19SrCHIiLiV/4oL1kLFAKpeNsGtqoFtvnh+iIiMkpsya3C5bEsnZwc7KGIiPjVgEO3tfYIcAQ4GcAYkwKcDtRZa10Dvb6IiIwO1lr+8VEuoQ7D4olJwR6OiIhfDbhYzhjzX2PMHN/jDGAHcBPwd2PMVwZ6fRERGR2eXJ/Hi9sK+eq504mP1DIPIjKy+OMOlcnW2h2+xzcCr1trLwWW4w3fIiIiPdpbVMt3X9jJadNSue2MqcEejoiI3/kjdLe0e3w28BKAtbYW8Pjh+iIiMoK1uD3c8fgm4iJD+dWn5uNwmGAPSUTE7/xxI2WeMeYOIB9YBLwCYIyJAvT7QRER6dYDqw/wo5f2eB9fu5j0uMggj0hEJDD8MdN9M3AS3p7cn7LWVvm2rwAe9sP1Rf5/e/cdHkd17nH8e7TqXbKaLbn3XrCNARswxrRASCBcCIFAIJAChEAuSchNSAgJ5KYQCNwUOiSEDiGUADYGbAMG3Atustxk2SpW79LuuX/MSpZs2dZKu1qt9Ps8jx9LM7Ojs6/Xo3fOvOccEemjXl+/H4A5I1JZOCEzyK0REQkcf8xeUkQHy71ba98D3uvu+UVEpO+KjXQxKiOeR6+ahTEqKxGRvktLfYmISNDUNXkYlBxDXJQ/qh1FRHovJd0iIhI09Y1uYiNcwW6GiEjABTTp1jzdIiJyLLVNzcREKukWkb4v0D3dtwb4/CIiEsLqGj1Eq6dbRPqBQCfdGhUjIiJHVd/kJkZJt4j0A4FOum2Azy8iIiHKWkttYzOxKi8RkX6g28PFjTFVOMl1S692S6JtgJjunl9ERPqmRrcHj0U13SLSL/hjnu4EfzRERET6l/pGD4BqukWkX/BHT3c0zuI4o4D1wGPW2ubunldERPq22ibnV4XKS0SkP/BHTfeTwExgA3Ae8Ac/nFNERPq4ukY3gAZSiki/4I8lwCZYaycDGGMeBT71wzlFRKSPq2tykm6Vl4hIf+CPnu6mli9UViIiIp1V7026VV4iIv2BP3q6pxpjKr1fGyDG+70BrLU20Q8/Q0RE+pjalvISJd0i0g/4Y/YSXS1FRMRnqukWkf4kIIvjGGPijDFXGGPeCMT5RUQk9KmmW0T6E78l3caYSGPMl40xLwD7gQXAX/11fhER6VtaerpV0y0i/YE/5uk+C/gqcBbwHvAUMMta+43unltERPqG3KJqHvtwJ4UV9YzKjOdL07Jbe7pVXiIi/YE/BlK+BSwD5lprdwIYY+73w3lFRKSPeHhpHs+t3Mu4rAQ+2FbM3z7Ia92ngZQi0h/4I+meAVwGLDbG5AHPArqCiohIqx3F1cwelsrz3z6Jg9UNvLFhP3e8ugmAqPCADC8SEelVun2ls9autdb+2Fo7Evg5MA2IMMb8xxhz/fFeb4x5zBhTZIzZ2Gbb74wxW4wx640xrxhjktvsu90Yk2uM2WqMObu77RcRkcDbUVzNyIw4AAbER/H1k4ax9Lb5/PWKEzDGBLl1IiKB59fuBWvtR9bam4Ac4F7gxE687AngnMO2LQImWWunANuA2wGMMRNwetUnel/zZ2OMetVFRHqx0ppGymqbGJke3277kAGxnDMpK0itEhHpWf4oLzmCtdZjjKkD6jtx7FJjzLDDtr3T5tsVwFe8X18IPGutbQB2GmNygdnAx35puIiIdJm1lm2F1cRHhxMb4WJTQSUl1Q18sK0Y4IikW0SkP/Fr0m2MmQ5cDlwC7ARe8sNprwGe836djZOEt8j3bhMRkR5U3dDMK2v2cenMwUSGh1Hf5ObHL63nX2sLMAbiI8Opamhu95rRmUq6RaT/8seUgWNwpgz8KlCCkyAba+18P5z7f4Bm4OkuvPZ64HqAIUOGdLcpIiLSxkMf7OBPS3Kpqm/iwmnZfOvvK9lUUMmN80dxsKaRHUXV3LRgFAOTYnCFGQor68lJiQ12s0VEgsYfPd1bcKYMPN9amwtgjLmluyc1xlwNnA8ssNZa7+Z9wOA2h+V4tx3BWvsQ8BDAzJkzbUfHiIiI797fWsSTH+8mzMB9i7fz8NI8mt2WR74+kwXjMzt8zfC0uB5upYhI7+KPgZQX4axA+Z4x5mFjzAKgW0PRjTHnAD8EvmitrW2z69/AZcaYKGPMcGA08Gl3fpaIiHTeWxsPcPXjnxEX6eIf3zyRuaPSyEyM5pUbTjlqwi0iIn7o6bbW/gv4lzEmDmeg4/eBDGPMX4BXDhsUeQRjzDPA6UCaMSYfZ9rB24EoYJF3KqkV1tpvW2s3GWOeBz7HKTu5wVrr7u57EBHxxYGKemIiXCTFRgS7KT1qU0EFtzy3lmmDk3n2+jlER7g4eWRasJslIhISzKHKDT+e1JgUnMGUl1prF/j9B/ho5syZduXKlcFuhoj0AfVNbsb97C1mDEnm5e+eEuzm9JiS6gYufPBD3B7Lv288hYzE6GA3SUSk1zHGrLLWzuxoX6CmDCzDqad+KBDnFxEJBGstT360i7omD2nxkQxJjWX6kBQi26yY+I8VuwFYvac8SK0MjoeX5VFUVc/L31HCLSLSFQFJukVEQs3zn+3l7U0HeHdLUbvt4wcm8vy35pAQHcHKXaX89q2tAGQmRgWjmQHh8Vje3LifcVmJjMroeFq/T3eWMjUnmck5ST3cOhGRvkFJt4j0ex6P5YcvrW/9fu0dC6moa+KzXWX86KX1zPr1Ym46YzSPLt9JdkoMp45O46kVu2lye4hw+XVh34B77rM9PP7hLq46eRhfnT2Ezfsr+ckrG1izp5yR6XG8efM8osLbL/Rb3+Rm474Krpk7PEitFhEJfUq6RaTf21hQAUBMhIt7/2sqybGRJMdGMnRAHENSY/n1m5v53dtbSYqJ4LGrZ/FJ3kGshaKqBrKTY4Lc+s7xeCx/+WAHv3vb6an/46Jt5BVX89iHu0iOieDaucN5dPlOpvziHV76zslMyj7Uo70+v4Imt+WEISnBar6ISMhT0i0i/Zq1lhdW5gOw7EfzSYtvXzYye3gqf7psGj98cT23LhzD8LQ4dh+sAWB/eV1IJN1lNY384IV1LNlSxAVTB3H6mHR+8MI6Hl62k8tmDebH544jOTaSKTlJ3PzsWl5Zs49J2UlU1DWxek8Zf31/BzERLk4cPiDYb0VEJGQp6RaRfu2fn+7h7yt2818zc45IuFsMHRDHc986qfX7Qd5Eu6Civkfa2B2vry/gV69vprSmkTu/OJGvnzSUhmYPK3eXsnBCJmeMOzS39oXTsnltXQGvrNnHmj1lrN1bjsc7wdW3ThvR76ZIFBHxJyXdIhIycouqeOrj3fz0CxPazSjSVW6P5W8f5DF9SDK/uWhKp1+XleTM3rG/vK7bbQikHcXV3PTMGsZnJfLQ109gSk4yANERLu45yvv9ygk5vLuliMEpMdwwfxSzhqWyo7iaS2YO7vB4ERHpHCXdIhIyHlm2k2c/28uYzASumDO02+d7Z9MB9pTWcvu54wgL6/xCuonREQxKimbt3vJutyFQPthWzK3PrSXSFcZT184+ai/+4c6ZNJDtvzqX8DYDRE8dkx6oZoqI9BuhNexeRPq1xBinvOGJj3bR2Ozp9vkeXpbHkNRYzpqY5fNr545O46MdB3F7/L/AmD88vDSPgzWNfP/MMZ1OuFuEh9iMLCIioUBXVhEJGWU1jQDkFlXz5/dzW7f/7u0tTL3zHXxZYXfV7jJW7ynnmlOG4fKhl7vFKaPSqKhrYsO+Cp9f2xNyi6q5aEY23zl9ZLCbIiIiKOkWkRBSVtvIhIGJXDhtEA8uyWWTd6q//3tvBxV1TZRUN7Ye6/FYqhuaOzxPs9vDX97PJTE6vMu1yvNGpxPhMry2rqBLrw+EukY31jrv+0BlPSPTO17oRkREep6SbhEJGaU1jaTGRfKLCyaSHBvJf7+wnrzi6tb9bb/+n39tZNLP36bZfWQZyk3PrGHx5iKumTucuKiuDW1JjYtk4YRMXl6dz6LPCzlQUe9TT7u/NTS7mfu/S7j0bytYvr0E4KirS4qISM9T0i0iIaOstomUuEhS4iK5+8uT2Ly/kjP+8EHr/h3FzvzZ1lqe+XQPALsO1rY7x4GKet7adIBr5w7n5gWju9Wea+eOoK7JzXVPrWTOPe9y52ufd+t83bGzpIaDNY18uquU7zy9CkA93SIivYiSbhEJGaU1jaR654o+a2IWT10zmzvOn8A9F00mOiKMHcXVeDyW/2w80PqaPy7axour8nF7LMVVDdz87BqshSvmDMUY32u52zphaAqrf7aQl75zElNykliRd7Bb5+uO7YVOL/9fr5jB5OwkUuMiGTogNmjtERGR9jRloIiEhGa3h4o6p6e7xalj0luns/v7x7t5fuVenv9sL1UNzeSkxJBfVscbG/bzxob9PPXxLlxhhvX5FVxyQg7D0+L80q7YyHBOGJrKrGGpPP3Jbjwe69P0g/6SW1RNmIHTx2awcEIWNY3NRGgWEhGRXkNXZBEJCeV1TYBTS92Ri0/IYWxmAl+ans3/XjyZRbec1rrvW6eOoLCynjV7yrnzixP53SVT/d6+YWlx1Dd5KKwKziqVuUXVDEmNJTrChSvMkBit1SNFRHoT9XRLSHh3cyG/fmMzp45J5xdfnBjs5kgQtEwXmBLbcdJ97dzhXDt3eLttA5Oi2V9Rzw/PGcdNC0azclcpp44OzEIvwwc4Pec7S2oYmBTTrXPVN7mJjnC1DszsTBnM1sIqDZwUEenFlHRLSHh+5V7ySmqobXQr6e6nSr1J99F6ujvy6o2nUNvgxhVmiI8K5/SxGYFqHsPSnPrpu17fzHPfmtOlnubiqgYuf3gFO0tquO+yady3eDtlNY2cMiqNuaPSOH1sOhmJ0Ue8rqiqvnVebhER6Z1UXiK9RllN41GnXNu4rxJwkgt/rEQooaes9tg93R3JSIhmmJ9qt49nUFIMka4wNu+v5KVV+V06xwNLtrO9qJpmj+XGf66huKqBuaPT+DjvID98aT0L7v2A4qqGI17XMkVgoHrxRUSk+5R0S6+wdFsxM3+9mHsXbeOXr32Op83S2qU1jewrr2N0RjweCwXldUFsqQRLac2xa7qDLSzM8M4tpwKwrbCqdXtFXRNn/P59bn52DQ3N7qO+fvfBGv75yR4uP3EIv/vKFAYlRfOPa0/k/sum8+lPFvDEN2ZRVd/Me1uKjnjtsu0lDIiLZMLARP+/MRER8Qsl3RJ0e0tr+d6za3B7LA8syeWxD3eyr01ivdG7zPa5kwcCsKe0tsPzSN/W0tOdHNt7BwgOS4vjxOGpbD1wKOn+5yd7yCup4dW1Bby3pfior7130TbCXYabF4zmkpmD+fDHZzA5JwlwarpPG5POoKRoFm0ubPc6j8eybHsJc0enBWXWFBER6Rwl3RJUdY1uvvX3VXg8lknZh3rp2iXd3qW+z5ucBcDeMiXd/VFpTSNxkS6iI1zBbsoxjclMYHthdety7I8u38m4rATAKY/qyKaCCl5dW8A1pwwn01uzffjgSWMMC8Znsnx7CfVNh3rMtxyooqS6gXkqLRER6dWUdEtQ3btoK5sPVHL/ZdM5d9LA1u35Ze17ugenxjAmI4FIVxh7Dirp7o/KahrbzdHdW43JSqCqoZkDlfU8uCSXkuoG7r5oMmEGiirb12Ovzy9n2i/f4cIHPyQ5NoJvnTbymOc+c0ImdU1uLvrzR7ywci8AH2xzes9PHZ0WmDckIiJ+odlLJCjyy2q5580tLN5cyMLxmcwfl0FWUjR/fX8HVQ3N7GuXdFcyOTuJsDDDuIEJfLQjeKv+Scf2ltby2voCFo7PZHRmAoWV9aTHR/m13KG0trHX1nO3NXGQ88Tm5dX7eGz5Ti6ekcOMISmkxUcd0dO9Lr+C8tomLpg6iJvOGEVSzLFLZ+aMSAXg8/2V3PbievJKali6rZipOUkdzmoiIiK9h5JuCYp/ryvgjQ37Aaf3DmD8wEQ23Hk2s3+9mHxvCUlFbRN7Smu5dNZgAL48PZs7X/ucLQcqGZelQWO9QZPbw3efXs2GfRX89q2tnDxyAB/nHeSsCZn86avTiQr3TzlIWU2jTzOXBMvUnGRS4yL53dtbiYt08aNzxgKQkRh1xMwjhRX1uMIM9106DVcnblCiwl1cf+oIiqsaiI5w8Zf3dwBwx/kT/P9GRETEr1ReIkHR9jH7/MPmTs5JiWFrYRX3Ld7GOfcvBWDWMKeH78Jp2US4DC+u7NqUbNJ9G/IruHfRttbpHR9cksuGfRXc9aVJfO+MUazPr2BcViJvbyrk+qdW8Zf3d/DkR7u6/XNDpafbFWY4faxTX/3d+aNae6DT46MoOjzp9j4R6EzC3eIn543nj5dO4+4vT+K2s8cyPC2OC6YO8t8bEBGRgFBPtwTFjuJqRmXEc+9/TSU9IardvuyUWF5bV8CGfRXMG53OXRdOYvZwJ+lOjYvkjHEZ/GvtPn507jgiXLpv7ElV9U1c8OByAM4Yl4EBHnwvly9Pz+bKOUMBuPGM0US4DM+v3MuPX97QWnP8lRNyiIs6/iXHWsvHOw4yY2hKu0GTZTVNIdHTDXD1ycMA2q2QmZEQzXtbi3n6k9187UQnVgcq68lMjOroFMdljOGG+aO4Yf6obrdXREQCTxmLBEVuUTWTs5OYkpN8xL7r5g3nv88aw9Lb5vPUNbNby09aXHLCYEqqG3l/69GnXxP/q2lo5ponPmv9/q/v7+DmZ9eQHh/VbpXQyPAwjDFcOmsIf7vihNY65Lc2HujUz/nPxgNc/sgn/GPF7tZtDc1uqhuaSY3rvdMFtjUlJ5l7/2tau5uGlpvL/3llI3u9014WVTaoFltEpJ9QT7f0uOqGZvZX1DMqI77D/VNykjtMxlucNjadtPhIXly1l4WHJeQSGNUNzXzj8U9ZvaecBy+fzvLtJTz72V4SosN5/OpZRx0AeNbELBZOyGTBvR/w4Hu5fGHKwCOm/CuuauCBJdvxWEuky8X7W53FXyrqmlqPKfMujBMKs5ccjafNaqtvbTzAdaeO4EBlfetTHBER6duUdEuP21VSA8DwLi7PHeEK40vTsnnio10UVdarp7AH3PrcWlbvKef+y6Zx/pRBnDMxi4tPyGFIamzrvNJHY4zhVxdO4vJHPuGRZXnceMbodvufX7mXpz7eTWpcJI3NHpo9HsCZl7tFy7ztg5Ji/PzOes5XZw+hvK6JT/IO8ubG/Vx50lAq6pq6XF4iIiKhReUl0uNalnHPSel6AnXlSUNp9lhm3/0ud7y60V9Nkw40uz28v62YK+cM5fwpzoC9cFcYs4alHjfhbnHyqDTmj03nsQ938WFuCXtLa3F7nJ7fdzcXMjUnidU/W8jGO89my13nMi7LmXawRctnZlBy6Cbdg1NjufvLk7loRg5r9pSzZk85gG4aRUT6CSXdEjBuj+WHL65j5a7Sdttbei2zu5FADR0Q1zpw76mPd1PX6D7OK6Sr8kpqaGz2MMW7JHlX3bRgNNX1zXztkU+Y99v3uOqxTymuamDN3nLOGNe+TCgrKZoDbZLu1p7u5NBPUM+d5Kyset/ibQCMTO+4zEpERPoWJd0SMB/mlvD8yny+8tePW6eXA9hXVkd0RFi3p3/7+QUT+P0lUwFYtbusW+eSo9u8vxJw5lHvjhlDUlj+4/n887oTuXTmYJbnlvDL1z8H4AtTBrY7NisxmgMVh6bXKyivIzE6nITo0BhIeSwj0uMZl5XAJztLiXCZ1sV0RESkb1PSLX7h8VgeeHc7z6/cy/2Lt3Pf4m3c/+721v2vri1o/bqgoo5ByTEY073VCsNdYZw7KYvwMMN73sF34h/7yuu45K8fkVdczX82HCDSFeaXHtmMhGhOHpnGLQvHAPDaugLOmpB5xKDajMRoDtY00OR26rsLyuvITont9s/vLc6b7NxkjB+YeMTAUhER6Zs0kFL8YltRFX9YtO2I7dfNG85nu8r4xWubqKxv4kvTs9lXVtet0pK24qLCOXtSFo99uJOU2Ai+fdpIwjV3d7f9+b1cPttVxhWPfEJBRT0nDE0hMtx/cc1KiuZ7C0ZTWFHPrWeNOXJ/YjTWQlFVA9nJMeSX1XVrDEBvc97kLO5dtI2px5ilR0RE+hYl3QHyyLI8/rY0j09uX0CYD6vNhaq13kFh91w0mQumDiI2woXbWiJcYeworubmZ9dwx6ubuOfNLbg9lotmZPvtZ//hkqmEGcPv39nGos8L+f0lUxmdmeC38/c3ByrqecG74mdBRT1ZidE8ec1sv/+cWxcemWy3GJgU7W1LHQPiItlTWsucEQP83oZgGZWRwF0XTmTu6PRgN0VERHqIugQDJMIVRnFVA6W1jcc/uA9Yu7ecpJgILps1mPiocMLCTOtqkSPT43ntxrm8esMpfHHqICLDw5g+JNlvPzs6wsUDX53Og5dPZ09pLRf9+SMqapuO/0Lp0ENL83Bby5hMp+TjnElZxHdiJUl/aunVzi+r453PC6ltdLNgfEaPtiHQrjxpWJenzRQRkdCjnu4AyfL21O0vryctvu/Pw7t2bzlTBycftU7bGMPUwclMHZzM/35lSkDacP6UQQwbEMf5DyznpdX5XNNmCW7pnJLqBv756W6+NC2b9IQothVWM3NYSo+3I7tN0v3xjoNkJ8dwysi0Hm+HiIiIv6inO0BaFvEoqKgLcksCr9ntYUdxNRO6ObuFP0zKTmLq4GReWbMv2E0JOQ8vzWPmrxZT3+ThhvkjmTc6jaSYCE4c3vNlHbGR4aTGRbIi7yDLc0u4ZGZOvyjTEhGRvks93QEyMLmlp7vvJ90F5fU0uS0jesmj8rGZ8SzdVhLsZoScRZsLAfjegtGMSI9nRHo8635+VtDak5MSw7LtJRgDl8wcHLR2iIiI+IN6ugNkQFwkka4w9lfUH//gELfzoLOs+7BeknTHRoZT29gc7GaEFLfHsnFfBVefPOyYAxx7Uktd99xRaX6b7UZERCRYlHQHiDGGrKRoCvpA0v15QWXrfMkd2VXSknT3jnmUYyNd1Da62y3II8e2rbCK2kY30wYnB7sprXK883JfOku93CIiEvqUdAfQwKTokC8v2VtayxceWMaPXlp/1CR2Z0kNcZEu0nvJgNG4qHCaPZbGY9woSHsb91UAdHupd3+aPzaD+WPTWTgh8/gHi4iI9HKq6Q6g7JQYPso9GOxmdMu6/HKshZdX72P6kBSunDO0dd+mggre3lTImxv2MywtrtsrTPpLbKSzwl9do5uocK321xkVdc4Ui+kJvePGCeCkkQM4aWTfmZtbRET6N/V0B9DwAXEcqKwP6frijfsqiXAZTh2Tzi9f28Sq3WUArNtbzgUPLOfBJdsZOiCW75/ZO+qAAeIinXvJmkZ3kFsSOmoanFjFRuo+XEREJBCUdAfQ8HRnYOGuktogt6TrNhVUMDYrgQcum87ApBi+/9waPB7Los8LMcbw8e0LeOHbJ/eqEoAYb093bUPo3uz0tNrGZqIjwnBpWj4REZGAUNIdQC2rze30DjTsrG2FVXzr7yupqg/uqopNbg/r8yuYNCiJpNgIfnDWGPaW1vHprlKWbS9mxpBkMhOjg9rGjsRFOUm3ero7r6axufUJgYiIiPhf0JNuY8xjxpgiY8zGNttSjTGLjDHbvX+neLcbY8yfjDG5xpj1xpgZwWv58R1Kuqt9et0neQd5e1Mhz366NxDN6rTFnxdSUdfEWROdXuyFEzKJjXRx7ROfsS6/gtPGpAe1fUfTUiIRymU9Pa22wU1slOrfRUREAiXoSTfwBHDOYdt+DLxrrR0NvOv9HuBcYLT3z/XAX3qojV0SGxnOwKRo8op96+murHeSxcc+3HnMqfoCqaiynvvf3c7ApGhOG5MBOO/nljPHcPKoNP7nvPFcd+qIoLTteGJby0vU091Z6ukWEREJrKAn3dbapUDpYZsvBJ70fv0k8KU225+yjhVAsjFmYI80tIuykqIpqmrw6TVV3qR7f0U9b27YH4hmHde9i7axs6SGX144qV2d73WnjuDhr8/kulNH9NqZQWJbB1IGrqf79fUFzPr1Yr755Ere3VyI2xPac4LXNrqJi1LSLSIiEii99bdsprW2Jds8ALSM0ssG2tZc5Hu3BScz7YTkmAhKqhvbbXt5dT5R4S6+MKXj+4Wq+iaSYyMYEBfJQ0vzWL69hMtmD+GEoSk90WQACirqGZeV0KsGSHZWS013XQBruh9ZtpPiqgbW5ZezeHMh2ckxXHXyUK6bN6LXTJ14uA35FXy0o4Tcomp+ct54UuIiW/dVNzQTr6RbREQkYHr9b1lrrTXG+NyNaIy5HqcEhSFDhvi9XZ2VHBtJbnH7mu5bn18HQGT4TE4aOeCIZKeqvpmkmAi+OW8Et7+8gU0FldQ0NnPC0BN6rN3ltY2ktknKQklsRGCnDMwtqmbt3nL+57zxXH3KMBZ9XsgTH+7i7je3MCYzgdPHZhzxmkeX76SiriloS6x/sK2Ya574rLVHPibSxS8vnNS6v7bBTWZC7xsUKyIi0lcEvbzkKApbyka8fxd5t+8D2q4JnePddgRr7UPW2pnW2pnp6cEb8JcUE0F57aFZSIqqDi0Lf91TK3lh5ZGDJasbmkmIDufL07NbFysZlBQT+Ma2UVrTSGpsaCbdgZ4y8LNdTjXUWRMziXCFcd7kgTz+jVmEGVi9p/yI40trGvnDO1v583u5lNY0HrE/0LYeqOLGp1czJjOBT3+ygCvnDOXpT/awv+LQaqk1jc0aSCkiIhJAvTXp/jdwlffrq4BX22z/uncWkzlARZsylF4pOTaCqvpmmr0DItfvrWi3f0/pkXN4V9U3kRAVQXSEi1dvOIXI8DBqm3p2UGBZTWO78oNQEhkeRqQrcDHbeqCK2EgXg1NiW7fFRYUzJjOBdXvL2x375Ee7mHHXImob3TR7LK+vLwhImzrS0OzmlTX5XPPEZ8REunj0qplkJEZz3bwRuD2Wl1bltx5b2+jWQEoREZEACnrSbYx5BvgYGGuMyTfGXAv8BlhojNkOnOn9HuBNIA/IBR4GvhuEJvskOSYCODQjybr88nb788vqDn8JVfXNxEc7CdCg5BgGJkX36EIv9U1uahrdIVteAk5vd6BitvVAFWMyEwg7bCGZaYOTWZdfjrVOCcdr6wr41RufkxoXyc0LRjM5O4m/fZAX0Frztt7ZVMgtz61jX3kdj141i0HJztOSIQNiOWnEAP75yR5qvDGqaVBPt4iISCAFPem21n7VWjvQWhthrc2x1j5qrT1orV1grR1trT3TWlvqPdZaa2+w1o601k621q4MdvuPJ9lbolFe20hVfRPPfLqn3f6jJd0J0Yd6HWMiXH6pT95bWsvizwuPe1xLOUxKiJaXAMRF+idmHdlWWMXYzIQjts8clkp5bROf7izl7jc3c9Mza5iSk8x7PzidWxaO4adfGM++8jr+773cgLTrcNsLqwBY9dMzmZyT1G7fLQvHsL+ynt/8ZwvNbg8NzR71dIuIiARQ0JPuvi4p1unpLq9r4sH3cjlY08j9l01r3Z9fdmR5SWV9E4nREa3fx0WF+6V39IEl2/n2P1bR2Hzsub/Lap2645TYiGMe15vF+ilmhyuuauBgTSNjso5Mus+ZlEV4mOHSh1bw0NI8vn7SUJ65bk7rZ+DEEQP40rRBPLQ0z+dVSrtiR0kNQwfEMiA+6oh9s4encs0pw/n7it0s3uzciGnKQBERkcBR0h1gLeUl6/eW8/jyXVw8I4ezJ2a17q+qb6ai7tBAS4/Htg6kbBEb6aKmsZnaxma2HKjsclvW51fQ7LHsPnjshK/MO9gvVGu6ARKjw1tvHvxpY4FTkz9+4JFJd3xUOFefPIyYCBd/uGQqv7xwEpHh7f+L/eS88USGhzH/9+9z7ztb+d4za3h4aZ5f22it5dW1+1i2rZiR6fFHPe62s8cyIj2O7z69GnCeDoiIiEhgKOkOsJbykj+8s41wl+GHZ48lOsLFlJwkZgxJBuCFlXtbe2VrGpuxliOS7rpGN48t38m59y9rNwCus+qb3GwvcqYuzC06NIVhS/0xOAPvPB5LqTdZDeWa7sxE3xcl6owN+U7SPTk7qcP9t583nnU/P4uLT8jpcH9GYjQ/OMuZNvBPS3L597oCfv3mZr+1z1rLi6vyufnZtVTWNzMiLe6ox0Z7bw5a1vWJVU+3iIhIwOi3bIAleXu6qxqaue3ssWQkOnMh//vGuZTVNPLVh1fwqzc2c//i7Zw/dVBrT3ZC2/KSyHBqGpvZV16HtXDbi+sIdxkunJZNs9tDZX3zcRPkzfsrW+dobkm6H12+k79+sIO3bp7HK2v28ft3thId4WKA91yhXNOdkRDF8twSv593w74KRqTHtfv3acsVZtqt4NmRq08exlkTs1iyuZCfvbqpdVrI7qhrdPPn93N5bV0Buw7WYgxYy3HPPX1ICgOTotlfUc9xmi0iIiLdoKQ7wBK9PdbZyTFcO3d4u30pcZH85+Z5fLarjGc/3cPLq/Np8NZbR7oOPYRwZuJwU1zVwIi0ODISo7jlubVER7j4xb83caCyns/vPKd1fuqOvL+1GICEqHC2F1Xzx0XbuP/d7QAs2VLEPf/ZwkkjBjAoOZpPdpYyODUmpGu6MxKjqapvpq7Rfcy4+KLJ7WHd3nJOHjmgW+cxxpCdHMOVJw2joq6J37+zrdvt/NvSHTywJJd5o9P49mkjOXfSQF5bX8CF0wYd97V3XzSZbzz+GaMzjiyZEREREf9Q0h1g4a4wvnfGKOaOTic64sikyhjD7OGpzB6eyt0XTWbR54Xc9MwaRmUcqsWNiwqnttFNcXUj2Skx/O3KEzj5N0u47YV1rVMR7iuva/eatuqb3PxjxW7OGJdBeJjhzQ37afZYFozL4N0tRfzqDae84TcXTybHO/e0tbbXLmfeGRneHt6iqnqGDjh6iYUv/rhoG0VVDZw7eaBfzgcwONWJ996yWsZkJlDb2ExVfTN/eGcr50zK4oxxme2Ot9aSX1ZHTkpM679Ps9vDc5/tZd7oNP5+7Ymtx14xZ2in2jB/bAY77j7vuD30IiIi0nVKunvArWeN7dRx0REuLpg6iDPHZ7br9YyNdFHX5Ka4sp6RaQOIjQxnVHo8K3eXtR6zv+LoSfcra/ZxsKaRb84bzsj0eDyvbGRMZjy3LhzD+DveoqKuiZNHDmhNuIGQTriB1jKeoqoGvyTdy7YX85cPdnDpzMHtBsJ21xBv0r37oJN03/jPNSzZ4izAunZv+RFJ972LtvHAkly+MHkg91w8mcToCB7/cBf7K+r5+QUTu9wOJdwiIiKBpaS7Fzq8zCDW+31BRT1p3h7cEelxrNxdRoTL0OS2FJQfOd83OLOhPLIsj4mDEjlpxACMMTxy1czW/enxURRU1DPdO6izr8hMdOJUWFnfuq2yvgkDR63HPpriqgZueW4to9Lj+cUXu57YdqTlhuDVtfuIjghrTbjhyHrsvaW1PLAkl+lDknlr0wE2FVTwo3PG8du3t3D2xEzOntg+QRcREZHeQ7OXhIDYNouWpMe3JN1Or/Ypo9IwBgrK6ymvbeTW59dy87NrKPfOQPL+tiJ2FNdw3bwRHfZeV3lXJJyakxzgd9GzMhK8Pd2Vh2Yw+c4/VrVOj+eLh5buoKKuiQcvn+G3+vAWKbERzB2Vxuvr93Plo58C8Oz1c5g3Oo3Cyvazr3ycdxCA3148hWevn0Ndk5vvPL2aCFcYd104KeSfToiIiPRl6ukOAbFtEr20BGdGkZap4MZlJbJ5fyV5JTV888mVrSUnYzITuGH+KB5eupOBSdF8YUrHdcixkS6q6puZNjg5sG+ih6XERhAVHsaeUmfxIbfHsmp3GY3NHkprGjs1HaLHY/nX2n38e10Bc0YMYGwHC+J0lzGGf3zzRA5WN7Air5S6JjdzRgzg7U0HWLOnvN2xK/IOMiAuklEZ8RhjePN787jr9c85ccSA1nIaERER6Z2UdIeA9j3dTnI1fmAiYcaZL3pF3kFeW1eAMfDnr83gHyt2889P9jB3VBof5x3k9nPHEeHq+KHG41fP5r2tRX0uaTPGMGtYKh/vcHqH84qrqW9yZoZ5b0vRUefRbuujHQe59fl1AHz7tJGBaywwID6q3Y3RwKRoqhuaW1cn9XgsH+84yOzhqa092gPio7jvsukBbZeIiIj4h8pLQkBc1KGe7gxvrfLg1Fje/cHpnDspi+zkGAB+ccFEzps8kG+cMpx95XVc+H8fEhfp4rLZQ4567gmDErlh/qjAvoEgmTc6ja2FVewqqWHDPmdRm8jwsNZlz4/l7U0HuG/xNgDCDCyc0LP10llJzr/pgQqnJv2zXaXsr6j36yBOERER6Tnq6Q4BbctLRreZoWS4t8TkO6ePZMH4DC6a4fTenjk+gxHpceQV13Db2WNbF+jpb04dk849/9nC6b9/nzADUeFhfHl6Nv9eV0B9k7t1CsfCynrio8KJ867I2OT28K2/rwJgXFYCb35vHmE9PLvHwCTnycP+inrGZCbwypp9xEW6OEuDJUVEREKSku4Q0LIy5I3zR3U4WG5SdhKT2ixLbozhqWtmk1tUzeljM3qsnb3N+IGJPP6NWeQWVlNQUcfI9HhyUmJ49rO9LN9ewpkTMqlpaObEu99tN8f1+vzy1nN8/aRhPZ5wA+SkOD3dK/IOctqYdD7OO8jc0WntSo1EREQkdOg3eAgYkR7P+/99OkMHxB7/YK+clNh28273V/PHZjC/zY1HQ7ObgUnR/HHxNqobmvnQu1T8su0lNDS7iQp3sXz7QYyBVT9d2KkBl4EwMCmGL0/P5uGleZwxLoPdB2u5pBN16CIiItI7qaY7RAxLi9OUcH4QFe7ix+eOY1NBJd9/bi0vrMonwVtWsmybk4B/mFvC5OykoCXcLe44fwLJsRFc/9RKACYOSjrOK0RERKS3Uk+39DsXTstmbFYCka4wUuMiiYl0MeGOt1m7t5yTRg5g9Z4yrjt1RLCbSUpcJHddOInveOcWnzgoMcgtEhERka5S0i390ris9gnsoORodpfW8unOUpo9lrmj0oLUsvbOnTyQC6YOYkN+eZ+b1lFERKQ/UdItAgxNjWPPwRqW55YQFR7GCUNTgt2kVvddOo2GZnewmyEiIiLdoKRbBBgyIJY3N+ynodnDrGGprdMJ9gauMKNZS0REREKcBlKKAENTYymvbWLLgSpO6SWlJSIiItJ3KOkWgXbTMfaWem4RERHpO/TMWgSYMSSFcVkJXDB1EJOyNUuIiIiI+JeSbhEgIzGat75/arCbISIiIn2UyktERERERAJMSbeIiIiISIAp6RYRERERCTAl3SIiIiIiAaakW0REREQkwJR0i4iIiIgEmJJuEREREZEAU9ItIiIiIhJgSrpFRERERAJMSbeIiIiISIAZa22w2xBwxphiYHcP/KgkIAIo6YGf1VekcfR4JQEVPdiWUHGsmB1Lf45nV2N2LH09noGI2bGEejx7Ol7H09vj2dvidTy9JZ6hFrej6cl49nTMhlpr0zva0S+S7p5ijHkImGGtnRnstoQKY8zKo8XLGPOQtfb6nm5Tb3esmB3ndf02nl2N2XHO2afjGYiYHefnhXQ8ezpex9Pb49nb4nU8vSWeoRa3o+nJePammKm8xL9eC3YD+hjF078UT/9SPP1L8fQvxdO/FE//6pfxVNLtR9bafvkhChTF078UT/9SPP1L8fQvxdO/FE//6q/xVNLtfw8FuwEhRvHynWLmO8XMd4qZbxQv3yheXaO4+a7XxEw13SIiIiIiAaaebhERERGRAFPSLQFnjDHBboP0ffqcSaDpMyaBps9Y36akW3pCMoAxJjzI7QgZxpjLjTFTvV/rItw50S1fKGYSIMmga1ln6TrWJbqOdZExptfntL2+gb2JMeZLxpi7gt2OUGGMSTLGvA28BWCtbQ5yk3o9Y8yZxphlwH3AdACrgRfHZIw5yxjzEfCgMeZroJgdj65lvtG1zDe6jvlO17GuMcZ80Rhza7Db0Vm6Wz8O751mGPAN4MfAUGPMO9baZcFtWUioA8qBucaYS6y1LxhjXNZad5Db1at4P2PRwJNABvAr4EIg1rtfMTsKY0w68EvgN0Al8H1jzBBr7T3GmDBrrSe4Lew9dC3rFl3LjkPXsa7Tdcx33qdNPwC+Awwxxiyx1q7t7Z8z9XQfh3W4gVycO/bvAuohOg5jjAtIAVYAlwIPAFhr3Xpk1p73M1YHPG2tPd1a+zbwEXCld3+vvYAEk/dzlAmss9b+y1q7BCeZvM0Yk2at9eizdoiuZV2ja1nn6DrWNbqOdY33adNWYBxwK/A37/Ze/TlT0n0UxpjvGWMeNsZ807vpA2ttlbX2YSDOGHOt9zjFkHbxusYYY7wf/ErgC9ba14H1xpg7jDGTrLVWF5F2MbsOwFr7qne7C9gJbDLGDA5mG3sbY8xVxpiF0ProtRo42RiT6t32OfA83sRIdC3zla5lvtF1zHe6jnWN97P2G2PMf3k3vWGtrbfW3gdkGGMu9x4XEbRGHocush0wxlwNXA68BFxpjLkdGNHmkDuAW40xKXrsc0S8rgJuN8aMBBJweocAnsWJ2xPe7/t1adNhMbvCGPMTY8wIaL1TrwSm4jzS7veMMSnGmBdxHr/+wfsLHWvtLmANcH+bw28HRhhjhvf3mkhdy3yja5lvdB3zja5jXWMct+A8aVoJ3On97KW0OexW4HcA1tqmHm9kJynp7tgC4H+ttW/h1AxFA19r2Wmt/Q+wGbjeGJNgjLkkOM3sNQ6PVxRwCU4d5LnGmHeA7wFLgN3e1/T3gUiHxywSuKJlp7V2A1APXBac5vUu1toy4B1gPLAKJ+lpcSNwjjFmlvf7GmAd0NijjeyddC3zja5lvtF1zAe6jnWN96ZjPvBTa+2LwC3AFODsNse8Amwzxvw3OIN5g9HW41HS3Uabx6trgPMBrLUrgY+BbGPMKW0O/xFwD7AdyOrJdvYWx4nXCGAusAj41Fo7zVp7FnB6f75zP0bMVuB8xuZ6jzPA20C0Hl+3vv+nrLXlwJ+Bi4wxQwGstZXAncDPjDFXAT8FJuI8su2XdC3zja5lvtF1zHe6jnXO4Z+TNp+1lcA8AO9N3nZgojFmbJvDvwP81hhzAMjugeb6rF8n3caYicaY1jkx2zxe/RAIM8ac6v1+I7AfGOR93Sic/zD/AmZYa/tF3ZUP8doE5OM8kr3DWvvTNqcZYq3d2SMN7gV8/IwVAAO9x1mcGQBq+tsv9Q5iZr1/13v//gz4D/DrNsc8iDM92QnAUOASa21FDzY7qIwxp3jLIABdy47Hh3jpWobPny9dx+gwZrqOdU5M22/afNZygQRjzGTv9x8ASTj/NzHGTAMexil1mmGtfbJHWuujfpl0G2OmGGOW40xpNKDN9pZ4bMe52F5qnOln8nFGFw/z7q8AbrTWXmStLei5lgdHF+K1F+eX+lBrbaMxxtVyrLW2poebHxRd/IxlcegzBvDf1trHeqjJQXeMmBlz5CC/B4FR3gQ90xgzyjvq/xZr7VX94f8lgDFmhrfkYQnOL6CW7bqWdaAL8erX17Iufr76+3XsaDHTdewYjDFzjDEvAf9nnDnLXd7tLWMmPsUp5TrLGBPuHWyaDcz07j8IfNdae0lvjlu/TLpxHtu8aK39srV2H7TOIdpyR1UFLMOp5/u9cUbCpuD8o2KtLbbWbg9Cu4OlK/FK5lC83P1wkFa3PmMA1tr+Vst3tJhZ60ybFWOMiQew1u4BXgE24PR4JHq39+rpovzFGBNhjPkb8BDwJ5xH+Kd79+ladphuxiuZfnYt89fnC/rPdawTMdN17CiMMafjPHF7GWcawCuAFOPMUd4MYK3NxSkxGYkzpSJAA96xFdbavdYZQ9Cr9auk2xgTZpyR1dXWmWIGY8xCY0wyYLzf/wr4J04P0M9wLiDLvN/3yscVgaJ4+U4x810nY3YX8DTemTeMMV/FmWf698Bka+3qIDQ9mKKApcA860xj9zIw3tsD5AYwxtyJPmctFC/fKF6+60zMfo6uYx2ZAnxmrX0a+AcQgfP7wAPO70xjzKM4g0//BMw2xqwCSnFubkJGn5/qyBgzByi11m7z3mWWAPOMMecD38SpHyoENhtjnsH5z3C7964KY8w1QJy1tipIb6FHKV6+U8x814WYjQR+2BIznPl/T+8vNbXQPmY4NbJPt9ntAtzW2mZjjAEmA6OBH1trd3hf368+Z4qXbxQv33UhZmOB21piRj+8jsERcQPnZuUXxpgCnJuQzcCfjTFvA3txfmfeYZ2pFTHOfNzh1hmQGlqstX3yD84jwTdwHn/9FOdi0LLvJ8Bq4Ive708FXgVOanNMWLDfg+LVu/8oZkGJmSvY76G3xAznKUCY9+tRODcpKS372ry+X33OFC/FKwRi1u+uY0eJW3ybfbOBx4CLvd9fizMwcmqbY0L+s9aXy0vicB473OT9+tQ2+17HGeiR6v1+JXAAZz5RvHVEfb5u7zCKl+8UM991N2b9qtbRq8OYWYfHOzhrl/eY01r2Qb/9nClevlG8fNfdmPXH6xgcGbd5LTustZ8C6Rya/34JTpJeBn3ns9ankm5jzNeNMacZYxKtMxDrIZylVOuBE40x2QDW2vXAbcANxpg0nKL9yRwaLBPy/7CdoXj5TjHznWLmu07ErGXKP+ONS5T3pS03KAb6T8wUL98oXr5TzLrGh7hFAR/hlJeAs/BSqve4PhO3kE+6jWOgMeY9nGV7vwb8xRiTZq2tt9bWAotxBnmc0fI6a+2jwDPAL4CLgW9aZyRxn6Z4+U4x851i5ruuxMxaa40zM0INzvV8Tsv24LyLnqN4+Ubx8p1i1jU+xm0BgLW2Afg3EG+MWQp8FWc606LgvIvACOmBlN4PttsYkwDss9ZeYZy5He/DuZu6CMBa+6ExZjYw1hiTBHistVXW2nuNMRHW2qagvYkepHj5TjHznWLmuy7EbJw3Zk3eX2AA19j+Mz2b4uUDxct3ilnXdPH6nww0WGs3GWc1zoHW2rwgvYWACsmebuMsUHA3cLcx5jScEcFuaJ3f8mbgZO++Fg8D8ThL+ea2PNLoD7/YFS/fKWa+U8x854eY7WwTsz7/y13x8o3i5TvFrGv8ELddxphsa21dX024IQSTbu8/2CqcxxK5wF1AEzDfe9fUUvvzC++fFl/AqRVahzMfZq9dscifFC/fKWa+U8x8p5j5RvHyjeLlO8Wsa/wQt7U4cdvXY40OklAsL/EAf7DW/h3AGDMdGA7cAfwFOME4I4f/BZxhjBlmnbkd64EzrbVLg9Lq4FG8fKeY+U4x851i5hvFyzeKl+8Us65R3Dop5Hq6ce6mnvfWCAF8CAyx1j4BuIwxN3nvqHJwJqbfBWCtfbU//cO2oXj5TjHznWLmO8XMN4qXbxQv3ylmXaO4dVLIJd3W2lprbYM9NM/lQqDY+/U3cJZdfR1nBoTVcGiqnv5I8fKdYuY7xcx3iplvFC/fKF6+U8y6RnHrvFAsLwGcon3AApk408yAs8rRT4BJwM6W+iBr+89UPUejePlOMfOdYuY7xcw3ipdvFC/fKWZdo7gdX8j1dLfhASKAEmCK9y7qZzjTji23/aAg30eKl+8UM98pZr5TzHyjePlG8fKdYtY1ittxmFC+2TDGzMFZwegj4HHrLKwhR6F4+U4x851i5jvFzDeKl28UL98pZl2juB1bqCfdOcCVwL3WWc1IjkHx8p1i5jvFzHeKmW8UL98oXr5TzLpGcTu2kE66RURERERCQSjXdIuIiIiIhAQl3SIiIiIiAaakW0REREQkwJR0i4iIiIgEmJJuEREREZEAU9ItIiIiIhJgSrpFRERERAJMSbeIiIiISID9P/30rJh+fxDlAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 864x864 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "%pylab inline\n",
    "figsize(12, 12)\n",
    "\n",
    "ax1 = plt.subplot(211)\n",
    "perf.portfolio_value.plot(ax=ax1)\n",
    "ax1.set_ylabel('Portfolio Value')\n",
    "ax2 = plt.subplot(212, sharex=ax1)\n",
    "perf.AAPL.plot(ax=ax2)\n",
    "ax2.set_ylabel('AAPL Stock Price')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As you can see, our algorithm performance as assessed by the `portfolio_value` closely matches that of the AAPL stock price. This is not surprising as our algorithm only bought AAPL every chance it got."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Jupyter Notebook\n",
    "\n",
    "The [Jupyter Notebook](https://jupyter.org) is a very powerful browser-based interface to a Python interpreter (this tutorial was written in it). As it is already the de-facto interface for most quantitative researchers `zipline` provides an easy way to run your algorithm inside the Notebook without requiring you to use the CLI. \n",
    "\n",
    "To use it you have to write your algorithm in a cell and let `zipline` know that it is supposed to run this algorithm. This is done via the `%%zipline` IPython magic command that is available after you run `%load_ext zipline` in a separate cell. This magic takes the same arguments as the command line interface described above."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "%load_ext zipline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>period_open</th>\n",
       "      <th>period_close</th>\n",
       "      <th>longs_count</th>\n",
       "      <th>shorts_count</th>\n",
       "      <th>long_value</th>\n",
       "      <th>short_value</th>\n",
       "      <th>long_exposure</th>\n",
       "      <th>pnl</th>\n",
       "      <th>capital_used</th>\n",
       "      <th>short_exposure</th>\n",
       "      <th>...</th>\n",
       "      <th>beta</th>\n",
       "      <th>sharpe</th>\n",
       "      <th>sortino</th>\n",
       "      <th>max_drawdown</th>\n",
       "      <th>max_leverage</th>\n",
       "      <th>excess_return</th>\n",
       "      <th>treasury_period_return</th>\n",
       "      <th>trading_days</th>\n",
       "      <th>period_label</th>\n",
       "      <th>algorithm_period_return</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2016-01-04 21:00:00+00:00</th>\n",
       "      <td>2016-01-04 14:31:00+00:00</td>\n",
       "      <td>2016-01-04 21:00:00+00:00</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.00000</td>\n",
       "      <td>0.00000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.000000e+00</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>0.000000e+00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-05 21:00:00+00:00</th>\n",
       "      <td>2016-01-05 14:31:00+00:00</td>\n",
       "      <td>2016-01-05 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1027.1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1027.1</td>\n",
       "      <td>-0.52355</td>\n",
       "      <td>-1027.62355</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>-11.224972</td>\n",
       "      <td>-11.224972</td>\n",
       "      <td>-5.235500e-08</td>\n",
       "      <td>0.000103</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>-5.235500e-08</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-06 21:00:00+00:00</th>\n",
       "      <td>2016-01-06 14:31:00+00:00</td>\n",
       "      <td>2016-01-06 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>2014.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2014.0</td>\n",
       "      <td>-20.61350</td>\n",
       "      <td>-1007.51350</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>-9.516452</td>\n",
       "      <td>-9.394902</td>\n",
       "      <td>-2.113705e-06</td>\n",
       "      <td>0.000201</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>3</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>-2.113705e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-07 21:00:00+00:00</th>\n",
       "      <td>2016-01-07 14:31:00+00:00</td>\n",
       "      <td>2016-01-07 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>2893.5</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2893.5</td>\n",
       "      <td>-85.49225</td>\n",
       "      <td>-964.99225</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>-10.479703</td>\n",
       "      <td>-9.623685</td>\n",
       "      <td>-1.066293e-05</td>\n",
       "      <td>0.000289</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>4</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>-1.066293e-05</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-08 21:00:00+00:00</th>\n",
       "      <td>2016-01-08 14:31:00+00:00</td>\n",
       "      <td>2016-01-08 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>3878.4</td>\n",
       "      <td>0.0</td>\n",
       "      <td>3878.4</td>\n",
       "      <td>14.80520</td>\n",
       "      <td>-970.09480</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>-7.365239</td>\n",
       "      <td>-7.412520</td>\n",
       "      <td>-1.066293e-05</td>\n",
       "      <td>0.000388</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>-9.182410e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-22 21:00:00+00:00</th>\n",
       "      <td>2017-12-22 14:31:00+00:00</td>\n",
       "      <td>2017-12-22 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>871549.8</td>\n",
       "      <td>0.0</td>\n",
       "      <td>871549.8</td>\n",
       "      <td>-0.88505</td>\n",
       "      <td>-1750.98505</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>1.563884</td>\n",
       "      <td>2.500854</td>\n",
       "      <td>-5.682000e-03</td>\n",
       "      <td>0.085132</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>499</td>\n",
       "      <td>2017-12</td>\n",
       "      <td>2.376041e-02</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-26 21:00:00+00:00</th>\n",
       "      <td>2017-12-26 14:31:00+00:00</td>\n",
       "      <td>2017-12-26 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>851144.3</td>\n",
       "      <td>0.0</td>\n",
       "      <td>851144.3</td>\n",
       "      <td>-22112.06285</td>\n",
       "      <td>-1706.56285</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>1.389702</td>\n",
       "      <td>2.159343</td>\n",
       "      <td>-5.682000e-03</td>\n",
       "      <td>0.085132</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>500</td>\n",
       "      <td>2017-12</td>\n",
       "      <td>2.154920e-02</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-27 21:00:00+00:00</th>\n",
       "      <td>2017-12-27 14:31:00+00:00</td>\n",
       "      <td>2017-12-27 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>853000.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>853000.0</td>\n",
       "      <td>148.83700</td>\n",
       "      <td>-1706.86300</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>1.389258</td>\n",
       "      <td>2.158657</td>\n",
       "      <td>-5.682000e-03</td>\n",
       "      <td>0.085132</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>501</td>\n",
       "      <td>2017-12</td>\n",
       "      <td>2.156408e-02</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-28 21:00:00+00:00</th>\n",
       "      <td>2017-12-28 14:31:00+00:00</td>\n",
       "      <td>2017-12-28 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>857110.8</td>\n",
       "      <td>0.0</td>\n",
       "      <td>857110.8</td>\n",
       "      <td>2399.13460</td>\n",
       "      <td>-1711.66540</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>1.402894</td>\n",
       "      <td>2.180178</td>\n",
       "      <td>-5.682000e-03</td>\n",
       "      <td>0.085132</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>502</td>\n",
       "      <td>2017-12</td>\n",
       "      <td>2.180400e-02</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-29 21:00:00+00:00</th>\n",
       "      <td>2017-12-29 14:31:00+00:00</td>\n",
       "      <td>2017-12-29 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>849534.6</td>\n",
       "      <td>0.0</td>\n",
       "      <td>849534.6</td>\n",
       "      <td>-9269.35615</td>\n",
       "      <td>-1693.15615</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>1.337671</td>\n",
       "      <td>2.069500</td>\n",
       "      <td>-5.682000e-03</td>\n",
       "      <td>0.085132</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>503</td>\n",
       "      <td>2017-12</td>\n",
       "      <td>2.087706e-02</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>503 rows × 38 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                                        period_open              period_close  longs_count  shorts_count  long_value  short_value  long_exposure          pnl  capital_used  short_exposure  ...  beta     sharpe    sortino  max_drawdown  max_leverage  excess_return  treasury_period_return  trading_days  period_label  algorithm_period_return\n",
       "2016-01-04 21:00:00+00:00 2016-01-04 14:31:00+00:00 2016-01-04 21:00:00+00:00            0             0         0.0          0.0            0.0      0.00000       0.00000             0.0  ...  None        NaN        NaN  0.000000e+00      0.000000            0.0                     0.0             1       2016-01             0.000000e+00\n",
       "2016-01-05 21:00:00+00:00 2016-01-05 14:31:00+00:00 2016-01-05 21:00:00+00:00            1             0      1027.1          0.0         1027.1     -0.52355   -1027.62355             0.0  ...  None -11.224972 -11.224972 -5.235500e-08      0.000103            0.0                     0.0             2       2016-01            -5.235500e-08\n",
       "2016-01-06 21:00:00+00:00 2016-01-06 14:31:00+00:00 2016-01-06 21:00:00+00:00            1             0      2014.0          0.0         2014.0    -20.61350   -1007.51350             0.0  ...  None  -9.516452  -9.394902 -2.113705e-06      0.000201            0.0                     0.0             3       2016-01            -2.113705e-06\n",
       "2016-01-07 21:00:00+00:00 2016-01-07 14:31:00+00:00 2016-01-07 21:00:00+00:00            1             0      2893.5          0.0         2893.5    -85.49225    -964.99225             0.0  ...  None -10.479703  -9.623685 -1.066293e-05      0.000289            0.0                     0.0             4       2016-01            -1.066293e-05\n",
       "2016-01-08 21:00:00+00:00 2016-01-08 14:31:00+00:00 2016-01-08 21:00:00+00:00            1             0      3878.4          0.0         3878.4     14.80520    -970.09480             0.0  ...  None  -7.365239  -7.412520 -1.066293e-05      0.000388            0.0                     0.0             5       2016-01            -9.182410e-06\n",
       "...                                             ...                       ...          ...           ...         ...          ...            ...          ...           ...             ...  ...   ...        ...        ...           ...           ...            ...                     ...           ...           ...                      ...\n",
       "2017-12-22 21:00:00+00:00 2017-12-22 14:31:00+00:00 2017-12-22 21:00:00+00:00            1             0    871549.8          0.0       871549.8     -0.88505   -1750.98505             0.0  ...  None   1.563884   2.500854 -5.682000e-03      0.085132            0.0                     0.0           499       2017-12             2.376041e-02\n",
       "2017-12-26 21:00:00+00:00 2017-12-26 14:31:00+00:00 2017-12-26 21:00:00+00:00            1             0    851144.3          0.0       851144.3 -22112.06285   -1706.56285             0.0  ...  None   1.389702   2.159343 -5.682000e-03      0.085132            0.0                     0.0           500       2017-12             2.154920e-02\n",
       "2017-12-27 21:00:00+00:00 2017-12-27 14:31:00+00:00 2017-12-27 21:00:00+00:00            1             0    853000.0          0.0       853000.0    148.83700   -1706.86300             0.0  ...  None   1.389258   2.158657 -5.682000e-03      0.085132            0.0                     0.0           501       2017-12             2.156408e-02\n",
       "2017-12-28 21:00:00+00:00 2017-12-28 14:31:00+00:00 2017-12-28 21:00:00+00:00            1             0    857110.8          0.0       857110.8   2399.13460   -1711.66540             0.0  ...  None   1.402894   2.180178 -5.682000e-03      0.085132            0.0                     0.0           502       2017-12             2.180400e-02\n",
       "2017-12-29 21:00:00+00:00 2017-12-29 14:31:00+00:00 2017-12-29 21:00:00+00:00            1             0    849534.6          0.0       849534.6  -9269.35615   -1693.15615             0.0  ...  None   1.337671   2.069500 -5.682000e-03      0.085132            0.0                     0.0           503       2017-12             2.087706e-02\n",
       "\n",
       "[503 rows x 38 columns]"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "%%zipline --start 2016-1-1 --end 2018-1-1 -o perf_ipython.pickle --no-benchmark\n",
    "\n",
    "from zipline.api import symbol, order, record\n",
    "\n",
    "def initialize(context):\n",
    "    context.asset = symbol('AAPL')\n",
    "\n",
    "def handle_data(context, data):\n",
    "    order(context.asset, 10)\n",
    "    record(AAPL=data.current(context.asset, 'price'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Note that we did not have to specify an input file as above since the magic will use the contents of the cell and look for your algorithm functions there."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>period_open</th>\n",
       "      <th>period_close</th>\n",
       "      <th>longs_count</th>\n",
       "      <th>shorts_count</th>\n",
       "      <th>long_value</th>\n",
       "      <th>short_value</th>\n",
       "      <th>long_exposure</th>\n",
       "      <th>pnl</th>\n",
       "      <th>capital_used</th>\n",
       "      <th>short_exposure</th>\n",
       "      <th>...</th>\n",
       "      <th>beta</th>\n",
       "      <th>sharpe</th>\n",
       "      <th>sortino</th>\n",
       "      <th>max_drawdown</th>\n",
       "      <th>max_leverage</th>\n",
       "      <th>excess_return</th>\n",
       "      <th>treasury_period_return</th>\n",
       "      <th>trading_days</th>\n",
       "      <th>period_label</th>\n",
       "      <th>algorithm_period_return</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2016-01-04 21:00:00+00:00</th>\n",
       "      <td>2016-01-04 14:31:00+00:00</td>\n",
       "      <td>2016-01-04 21:00:00+00:00</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.00000</td>\n",
       "      <td>0.00000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.000000e+00</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>0.000000e+00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-05 21:00:00+00:00</th>\n",
       "      <td>2016-01-05 14:31:00+00:00</td>\n",
       "      <td>2016-01-05 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1027.1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1027.1</td>\n",
       "      <td>-0.52355</td>\n",
       "      <td>-1027.62355</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>-11.224972</td>\n",
       "      <td>-11.224972</td>\n",
       "      <td>-5.235500e-08</td>\n",
       "      <td>0.000103</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>-5.235500e-08</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-06 21:00:00+00:00</th>\n",
       "      <td>2016-01-06 14:31:00+00:00</td>\n",
       "      <td>2016-01-06 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>2014.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2014.0</td>\n",
       "      <td>-20.61350</td>\n",
       "      <td>-1007.51350</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>-9.516452</td>\n",
       "      <td>-9.394902</td>\n",
       "      <td>-2.113705e-06</td>\n",
       "      <td>0.000201</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>3</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>-2.113705e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-07 21:00:00+00:00</th>\n",
       "      <td>2016-01-07 14:31:00+00:00</td>\n",
       "      <td>2016-01-07 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>2893.5</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2893.5</td>\n",
       "      <td>-85.49225</td>\n",
       "      <td>-964.99225</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>-10.479703</td>\n",
       "      <td>-9.623685</td>\n",
       "      <td>-1.066293e-05</td>\n",
       "      <td>0.000289</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>4</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>-1.066293e-05</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2016-01-08 21:00:00+00:00</th>\n",
       "      <td>2016-01-08 14:31:00+00:00</td>\n",
       "      <td>2016-01-08 21:00:00+00:00</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>3878.4</td>\n",
       "      <td>0.0</td>\n",
       "      <td>3878.4</td>\n",
       "      <td>14.80520</td>\n",
       "      <td>-970.09480</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>None</td>\n",
       "      <td>-7.365239</td>\n",
       "      <td>-7.412520</td>\n",
       "      <td>-1.066293e-05</td>\n",
       "      <td>0.000388</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5</td>\n",
       "      <td>2016-01</td>\n",
       "      <td>-9.182410e-06</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 38 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                                        period_open              period_close  longs_count  shorts_count  long_value  short_value  long_exposure       pnl  capital_used  short_exposure  ...  beta     sharpe    sortino  max_drawdown  max_leverage  excess_return  treasury_period_return  trading_days  period_label  algorithm_period_return\n",
       "2016-01-04 21:00:00+00:00 2016-01-04 14:31:00+00:00 2016-01-04 21:00:00+00:00            0             0         0.0          0.0            0.0   0.00000       0.00000             0.0  ...  None        NaN        NaN  0.000000e+00      0.000000            0.0                     0.0             1       2016-01             0.000000e+00\n",
       "2016-01-05 21:00:00+00:00 2016-01-05 14:31:00+00:00 2016-01-05 21:00:00+00:00            1             0      1027.1          0.0         1027.1  -0.52355   -1027.62355             0.0  ...  None -11.224972 -11.224972 -5.235500e-08      0.000103            0.0                     0.0             2       2016-01            -5.235500e-08\n",
       "2016-01-06 21:00:00+00:00 2016-01-06 14:31:00+00:00 2016-01-06 21:00:00+00:00            1             0      2014.0          0.0         2014.0 -20.61350   -1007.51350             0.0  ...  None  -9.516452  -9.394902 -2.113705e-06      0.000201            0.0                     0.0             3       2016-01            -2.113705e-06\n",
       "2016-01-07 21:00:00+00:00 2016-01-07 14:31:00+00:00 2016-01-07 21:00:00+00:00            1             0      2893.5          0.0         2893.5 -85.49225    -964.99225             0.0  ...  None -10.479703  -9.623685 -1.066293e-05      0.000289            0.0                     0.0             4       2016-01            -1.066293e-05\n",
       "2016-01-08 21:00:00+00:00 2016-01-08 14:31:00+00:00 2016-01-08 21:00:00+00:00            1             0      3878.4          0.0         3878.4  14.80520    -970.09480             0.0  ...  None  -7.365239  -7.412520 -1.066293e-05      0.000388            0.0                     0.0             5       2016-01            -9.182410e-06\n",
       "\n",
       "[5 rows x 38 columns]"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.read_pickle('perf_ipython.pickle').head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Access to previous prices using `data.history()`\n",
    "\n",
    "### Working example: Dual Moving Average Cross-Over\n",
    "\n",
    "The Dual Moving Average (DMA) is a classic momentum strategy. It's probably not used by any serious trader anymore but is still very instructive. The basic idea is that we compute two rolling or moving averages (mavg) -- one with a longer window that is supposed to capture long-term trends and one shorter window that is supposed to capture short-term trends. Once the short-mavg crosses the long-mavg from below we assume that the stock price has upwards momentum and long the stock. If the short-mavg crosses from above we exit the positions as we assume the stock to go down further.\n",
    "\n",
    "As we need to have access to previous prices to implement this strategy we need a new concept: History\n",
    "\n",
    "`data.history()` is a convenience function that keeps a rolling window of data for you. The first argument is the asset or iterable of assets you're using, the second argument is the field you're looking for i.e. price, open, volume, the third argument is the number of bars, and the fourth argument is your frequency (either `'1d'` for `'1m'` but note that you need to have minute-level data for using `1m`). \n",
    "\n",
    "Let's look at the strategy which should make this clear:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Populating the interactive namespace from numpy and matplotlib\n"
     ]
    }
   ],
   "source": [
    "%pylab inline\n",
    "figsize(12, 12)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAuIAAAKXCAYAAADHDC9NAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAADhr0lEQVR4nOzdZ3Rc1fX38e+Zot4td1tu2AY3jBvFmBaKIXQChoQECAkpkEISAsmTQiAkQAoJaUAakORPJ6FDKAaHamxj496b5Cart9G087yYOyPJlizJmtGo/D5raXnmzJ17t4Swt7b23cdYaxERERERke7lSnYAIiIiIiL9kRJxEREREZEkUCIuIiIiIpIESsRFRERERJJAibiIiIiISBIoERcRERERSQIl4m0wxlxqjFltjAkbY2Z14PhTjTHLm334jDEXdkOoIiIiItILKREHjDGnGGMePGB5FXAxsKgj57DWLrTWTrfWTgdOA+qB/8YzThERERHpO5SIt8Fau9Zau/7AdWOM2xjzC2PMh8aYj40xX2rl7Z8CXrLW1ic+UhERERHpjZSId961QJW1djYwG/iiMWbMAcdcDjzS7ZGJiIiISK/hSXYAyWSM+QBIBbKAAmPMcuelm621r7TxtjOBacaYTznPc4HxwFbnnEOBqUBb7xcRERER6d+JuLX2WIj0iANXW2uv7sDbDPC1QyTqlwH/ttYG4hGjiIiIiPRNak3pvFeArxhjvADGmAnGmMxmr1+B2lJEREREpB1KxNtgjLnIGFMMHA+8YIyJVsD/AqwBlhljVgH34/xmwRgzGhgJvNX9EYuIiIhIb2KstcmOQURERESk31FFXEREREQkCZSIi4iIiIgkQb+dmlJYWGhHjx6d7DBEREREpA9bunTpfmvtwNZe67eJ+OjRo1myZEmywxARERGRPswYs72t19SaIiIiIiKSBErERURERESSQIm4iIiIiEgSKBEXEREREUkCJeIiIiIiIkmgRFxEREREJAmUiIuIiIiIJIEScRERERGRJFAiLiIiIiKSBErERURERKTPWLKtnO8+uQJrbbJDaZcScRERERHpMz5133s8vqSYmsZgskNplxJxEREREekxLvj923z2rx90+TxV9YE4RJNYnmQHICIiIiIStaK4Ki7nqWoIMDIuZ0ocVcRFREREpEcIhsJtvuYLhAgc4vXoMVEf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wKec918FPNNdn4eIyIFuOftIfv/pY5g1Kj/ZoYiISA+XsIp4O34PpAKvRu635H1r7ZettauNMY8Da4i0rFxvrQ0BGGNuAF4B3MDfrLWrnXPdDDxqjPkp8BHw1+79VEREmmSkeDh32rBkhyEiIr2AaeoK6V9mzZpllyxZkuwwRERERKQPM8YstdbOau21njA1RURERESk31EiLiIiIiKSBErERURERESSQIm4iIiIiEgSKBEXEREREUkCJeIiIiIiIkmgRFxEREREJAmUiIuIiIiIJIEScRERERGRJOi3O2saY0qB7d182UJgfzdfszvkAlUJOG9f/Xq1pytfz/76NWvLob6W+lp1XhGwI9lB9CKH+h5L1N+bvd3h/n/ZX7+eifp7rC9/Pbv77/5cIM9aO7C1F/ttIp4MxpglbW1x2psZYx6w1l6XgPP2ya9Xe7ry9eyvX7O2HOprqa9V5xljStv6x0QOdqjvsUT9vdnbHe7/l/3165mov8f68tezu//ub+9rqdYUiYfnkh1AH6OvZ/zoaxlflckOoA/R92Z86esZX/p6xs8hv5ZKxKXLrLX6HzaO9PWMH30t466v/qq62+l7M7709YwvfT3jp72vpRLx7vVAsgPoZfT16jx9zTpOX6vO09esc/T16jx9zTpHX6/O61FfM/WIi4iIiIgkgSriIiIiIiJJoERcRERERCQJlIiLiIiIiCSBEnERERERkSRQIi4iIiIikgRKxEVEREREkkCJuIiIiIhIEigRFxERERFJAiXiIiIiIiJJoERcRERERCQJlIiLiIiIiCSBEnERERERkSRQIi4iIiIikgRKxEVEREREkkCJuIiIiIhIEigRFxERERFJAiXiIiIiIiJJoERcRERERCQJlIiLiIiIiCSBEnERERERkSRQIi4iIiIikgRKxEVEREREkkCJuIiIiIhIEigRFxERERFJAiXiIiIiIiJJoERcRERERCQJlIiLiIiIiCSBEnERERERkSRQIi4iIiIikgRKxEVEREREkkCJuIiIiIhIEigRFxERERFJAiXiIiIiIiJJoERcRERERCQJlIiLiIiIiCSBEnERERERkSRQIi4iIiIikgRKxEVEREREkkCJuIiIiIhIEigRFxERERFJAiXiIiIiIiJJoERcRERERCQJlIiLiIiIiCSBEnERERERkSRQIi4iIiIikgRK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\n",
      "text/plain": [
       "<Figure size 864x864 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>period_open</th>\n",
       "      <th>period_close</th>\n",
       "      <th>long_value</th>\n",
       "      <th>short_value</th>\n",
       "      <th>ending_value</th>\n",
       "      <th>long_exposure</th>\n",
       "      <th>starting_exposure</th>\n",
       "      <th>portfolio_value</th>\n",
       "      <th>longs_count</th>\n",
       "      <th>short_exposure</th>\n",
       "      <th>...</th>\n",
       "      <th>algorithm_period_return</th>\n",
       "      <th>benchmark_period_return</th>\n",
       "      <th>benchmark_volatility</th>\n",
       "      <th>alpha</th>\n",
       "      <th>beta</th>\n",
       "      <th>sharpe</th>\n",
       "      <th>sortino</th>\n",
       "      <th>AAPL</th>\n",
       "      <th>short_mavg</th>\n",
       "      <th>long_mavg</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2014-01-02 21:00:00+00:00</th>\n",
       "      <td>2014-01-02 14:31:00+00:00</td>\n",
       "      <td>2014-01-02 21:00:00+00:00</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.000000e+07</td>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-01-03 21:00:00+00:00</th>\n",
       "      <td>2014-01-03 14:31:00+00:00</td>\n",
       "      <td>2014-01-03 21:00:00+00:00</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.000000e+07</td>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-01-06 21:00:00+00:00</th>\n",
       "      <td>2014-01-06 14:31:00+00:00</td>\n",
       "      <td>2014-01-06 21:00:00+00:00</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.000000e+07</td>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-01-07 21:00:00+00:00</th>\n",
       "      <td>2014-01-07 14:31:00+00:00</td>\n",
       "      <td>2014-01-07 21:00:00+00:00</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.000000e+07</td>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-01-08 21:00:00+00:00</th>\n",
       "      <td>2014-01-08 14:31:00+00:00</td>\n",
       "      <td>2014-01-08 21:00:00+00:00</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.000000e+07</td>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-22 21:00:00+00:00</th>\n",
       "      <td>2017-12-22 14:31:00+00:00</td>\n",
       "      <td>2017-12-22 21:00:00+00:00</td>\n",
       "      <td>17501.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>17501.0</td>\n",
       "      <td>17501.0</td>\n",
       "      <td>17501.0</td>\n",
       "      <td>1.000524e+07</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000524</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>0.687600</td>\n",
       "      <td>1.012820</td>\n",
       "      <td>175.01</td>\n",
       "      <td>163.442190</td>\n",
       "      <td>142.891860</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-26 21:00:00+00:00</th>\n",
       "      <td>2017-12-26 14:31:00+00:00</td>\n",
       "      <td>2017-12-26 21:00:00+00:00</td>\n",
       "      <td>17057.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>17057.0</td>\n",
       "      <td>17057.0</td>\n",
       "      <td>17501.0</td>\n",
       "      <td>1.000479e+07</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000479</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>0.624704</td>\n",
       "      <td>0.913225</td>\n",
       "      <td>170.57</td>\n",
       "      <td>163.598280</td>\n",
       "      <td>143.075387</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-27 21:00:00+00:00</th>\n",
       "      <td>2017-12-27 14:31:00+00:00</td>\n",
       "      <td>2017-12-27 21:00:00+00:00</td>\n",
       "      <td>17060.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>17060.0</td>\n",
       "      <td>17060.0</td>\n",
       "      <td>17057.0</td>\n",
       "      <td>1.000480e+07</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000480</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>0.624784</td>\n",
       "      <td>0.913342</td>\n",
       "      <td>170.60</td>\n",
       "      <td>163.746503</td>\n",
       "      <td>143.259273</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-28 21:00:00+00:00</th>\n",
       "      <td>2017-12-28 14:31:00+00:00</td>\n",
       "      <td>2017-12-28 21:00:00+00:00</td>\n",
       "      <td>17108.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>17108.0</td>\n",
       "      <td>17108.0</td>\n",
       "      <td>17060.0</td>\n",
       "      <td>1.000484e+07</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000484</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>0.630682</td>\n",
       "      <td>0.922021</td>\n",
       "      <td>171.08</td>\n",
       "      <td>163.899520</td>\n",
       "      <td>143.445907</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-29 21:00:00+00:00</th>\n",
       "      <td>2017-12-29 14:31:00+00:00</td>\n",
       "      <td>2017-12-29 21:00:00+00:00</td>\n",
       "      <td>16923.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>16923.0</td>\n",
       "      <td>16923.0</td>\n",
       "      <td>17108.0</td>\n",
       "      <td>1.000466e+07</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000466</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>0.605565</td>\n",
       "      <td>0.884195</td>\n",
       "      <td>169.23</td>\n",
       "      <td>163.997280</td>\n",
       "      <td>143.626570</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>1007 rows × 40 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                                        period_open              period_close  long_value  short_value  ending_value  long_exposure  starting_exposure  portfolio_value  longs_count  short_exposure  ...  algorithm_period_return  benchmark_period_return  benchmark_volatility  alpha  beta    sharpe   sortino    AAPL  short_mavg   long_mavg\n",
       "2014-01-02 21:00:00+00:00 2014-01-02 14:31:00+00:00 2014-01-02 21:00:00+00:00         0.0          0.0           0.0            0.0                0.0     1.000000e+07            0             0.0  ...                 0.000000                      0.0                   NaN   None  None       NaN       NaN     NaN         NaN         NaN\n",
       "2014-01-03 21:00:00+00:00 2014-01-03 14:31:00+00:00 2014-01-03 21:00:00+00:00         0.0          0.0           0.0            0.0                0.0     1.000000e+07            0             0.0  ...                 0.000000                      0.0                   0.0   None  None       NaN       NaN     NaN         NaN         NaN\n",
       "2014-01-06 21:00:00+00:00 2014-01-06 14:31:00+00:00 2014-01-06 21:00:00+00:00         0.0          0.0           0.0            0.0                0.0     1.000000e+07            0             0.0  ...                 0.000000                      0.0                   0.0   None  None       NaN       NaN     NaN         NaN         NaN\n",
       "2014-01-07 21:00:00+00:00 2014-01-07 14:31:00+00:00 2014-01-07 21:00:00+00:00         0.0          0.0           0.0            0.0                0.0     1.000000e+07            0             0.0  ...                 0.000000                      0.0                   0.0   None  None       NaN       NaN     NaN         NaN         NaN\n",
       "2014-01-08 21:00:00+00:00 2014-01-08 14:31:00+00:00 2014-01-08 21:00:00+00:00         0.0          0.0           0.0            0.0                0.0     1.000000e+07            0             0.0  ...                 0.000000                      0.0                   0.0   None  None       NaN       NaN     NaN         NaN         NaN\n",
       "...                                             ...                       ...         ...          ...           ...            ...                ...              ...          ...             ...  ...                      ...                      ...                   ...    ...   ...       ...       ...     ...         ...         ...\n",
       "2017-12-22 21:00:00+00:00 2017-12-22 14:31:00+00:00 2017-12-22 21:00:00+00:00     17501.0          0.0       17501.0        17501.0            17501.0     1.000524e+07            1             0.0  ...                 0.000524                      0.0                   0.0   None  None  0.687600  1.012820  175.01  163.442190  142.891860\n",
       "2017-12-26 21:00:00+00:00 2017-12-26 14:31:00+00:00 2017-12-26 21:00:00+00:00     17057.0          0.0       17057.0        17057.0            17501.0     1.000479e+07            1             0.0  ...                 0.000479                      0.0                   0.0   None  None  0.624704  0.913225  170.57  163.598280  143.075387\n",
       "2017-12-27 21:00:00+00:00 2017-12-27 14:31:00+00:00 2017-12-27 21:00:00+00:00     17060.0          0.0       17060.0        17060.0            17057.0     1.000480e+07            1             0.0  ...                 0.000480                      0.0                   0.0   None  None  0.624784  0.913342  170.60  163.746503  143.259273\n",
       "2017-12-28 21:00:00+00:00 2017-12-28 14:31:00+00:00 2017-12-28 21:00:00+00:00     17108.0          0.0       17108.0        17108.0            17060.0     1.000484e+07            1             0.0  ...                 0.000484                      0.0                   0.0   None  None  0.630682  0.922021  171.08  163.899520  143.445907\n",
       "2017-12-29 21:00:00+00:00 2017-12-29 14:31:00+00:00 2017-12-29 21:00:00+00:00     16923.0          0.0       16923.0        16923.0            17108.0     1.000466e+07            1             0.0  ...                 0.000466                      0.0                   0.0   None  None  0.605565  0.884195  169.23  163.997280  143.626570\n",
       "\n",
       "[1007 rows x 40 columns]"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "%%zipline --start 2014-1-1 --end 2018-1-1 -o perf_dma.pickle --no-benchmark\n",
    "\n",
    "from zipline.api import order_target, record, symbol\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "def initialize(context):\n",
    "    context.i = 0\n",
    "    context.asset = symbol('AAPL')\n",
    "\n",
    "\n",
    "def handle_data(context, data):\n",
    "    # Skip first 300 days to get full windows\n",
    "    context.i += 1\n",
    "    if context.i < 300:\n",
    "        return\n",
    "\n",
    "    # Compute averages\n",
    "    # data.history() has to be called with the same params\n",
    "    # from above and returns a pandas dataframe.\n",
    "    short_mavg = data.history(context.asset, 'price', bar_count=100, frequency=\"1d\").mean()\n",
    "    long_mavg = data.history(context.asset, 'price', bar_count=300, frequency=\"1d\").mean()\n",
    "\n",
    "    # Trading logic\n",
    "    if short_mavg > long_mavg:\n",
    "        # order_target orders as many shares as needed to\n",
    "        # achieve the desired number of shares.\n",
    "        order_target(context.asset, 100)\n",
    "    elif short_mavg < long_mavg:\n",
    "        order_target(context.asset, 0)\n",
    "\n",
    "    # Save values for later inspection\n",
    "    record(AAPL=data.current(context.asset, 'price'),\n",
    "           short_mavg=short_mavg,\n",
    "           long_mavg=long_mavg)\n",
    "\n",
    "\n",
    "def analyze(context, perf):\n",
    "    ax1 = plt.subplot(211)\n",
    "    perf.portfolio_value.plot(ax=ax1)\n",
    "    ax1.set_ylabel('portfolio value in $')\n",
    "    ax1.set_xlabel('time in years')\n",
    "\n",
    "    ax2 = plt.subplot(212, sharex=ax1)\n",
    "\n",
    "    perf['AAPL'].plot(ax=ax2)\n",
    "    perf[['short_mavg', 'long_mavg']].plot(ax=ax2)\n",
    "\n",
    "    perf_trans = perf.loc[[t != [] for t in perf.transactions]]\n",
    "    buys = perf_trans.loc[[t[0]['amount'] > 0 for t in perf_trans.transactions]]\n",
    "    sells = perf_trans.loc[[t[0]['amount'] < 0 for t in perf_trans.transactions]]\n",
    "    ax2.plot(buys.index, perf.short_mavg.loc[buys.index], '^', markersize=10, color='m')\n",
    "    ax2.plot(sells.index, perf.short_mavg.loc[sells.index],'v', markersize=10, color='k')\n",
    "    ax2.set_ylabel('price in $')\n",
    "    ax2.set_xlabel('time in years')\n",
    "    plt.legend(loc=0)\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here we are explicitly defining an `analyze()` function that gets automatically called once the backtest is done (this is not possible on Quantopian currently).\n",
    "\n",
    "Although it might not be directly apparent, the power of `history` (pun intended) can not be under-estimated as most algorithms make use of prior market developments in one form or another. You could easily devise a strategy that trains a classifier with [`scikit-learn`](http://scikit-learn.org/stable/) which tries to predict future market movements based on past prices (note, that most of the `scikit-learn` functions require `numpy.ndarray`s rather than `pandas.DataFrame`s, so you can simply pass the underlying `ndarray` of a `DataFrame` via `.values`).\n",
    "\n",
    "We also used the `order_target()` function above. This and other functions like it can make order management and portfolio rebalancing much easier.\n",
    "\n",
    "# Conclusions\n",
    "\n",
    "We hope that this tutorial gave you a little insight into the architecture, API, and features of `zipline`. For next steps, check out some of the [examples](https://github.com/stefan-jansen/zipline/tree/master/src/zipline/examples).\n",
    "\n",
    "Feel free to ask questions on [our mailing list](https://groups.google.com/forum/#!forum/zipline), report problems on our [GitHub issue tracker](https://github.com/stefan-jansen/zipline/issues?state=open), and [join our community](https://exchange.ml4trading.io)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
